You are on page 1of 12

https://www.youtube.com/watch?

v=xrjrI8Iaa3Q
https://www.youtube.com/watch?v=AZTf7bTbGjg
Factura en Excel Parte 1 – Plantilla, Fórmulas y
listas de validación de clientes y productos
BY SERGIO ALEJANDRO CAMPOS · AUGUST 27, 2018

En esta primera parte del Proyecto Factura en Excel descargaremos
una plantilla de una Factura sencilla y la formularemos para traer los
datos del Cliente a facturar en base a su nombre elegido en una lista de
validación, así como devolver la información de las descripción de los
productos en base a otra lista de validación. Tendremos la hoja Factura,
Detalle de facturas, tabla de Clientes y tabla de Productos.
En la segunda parte de este tutorial usaremos macros VBA para guardar
la información de cada factura en una hoja aparte e incrementar el número
de factura automáticamente.

Descargando la plantilla
Excel nos provee de miles de plantillas en línea que podemos
descargar y modificarlas a nuestro gusto. Para este proyecto de Factura
descargaremos una Factura sencilla las cual modificaremos añadiéndole
algunas fórmulas y validaciones de datos.

Para que sea una factura algo más completa. Figura 1.  En la caja de texto Buscar plantillas en línea escribimos Factura simple. No vamos a la pestaña Archivo > Nuevo. . DESCRIPCIÓN. CANTIDAD e IMPORTE. Descargamos una plantilla de Factura simple en línea.  Seleccionamos la plantilla Factura simple que calcula el total. la modificaremos para tener las columnas CÓDIGO. Añadiendo columnas extras La plantilla sólo cuenta con las columnas DESCRIPCIÓN e IMPORTE. Ver Video Factura en Excel Parte 1 Suscríbete al canal de EXCELeINFO en YouTube para aprender más de Excel y macros.

Modificamos la plantilla de la factura que descargamos en línea. Agregar hojas nuevas Agregaremos las siguientes 3 hojas al archivo para tener una factura más dinámica:  Detalle de facturas: En la parte 2 de este tutorial guardaremos en esta hoja el detalle de cada factura. Hoja Clientes En la hoja Clientes tendremos una tabla ficticia con los datos de posibles clientes a los que podemos generarles una factura. tendremos los datos de:  Nombre.  Nombre de la empresa. estado y CP.  Clientes: En esta hoja tendremos una tabla de Clientes. .  Ciudad.  Dirección.  Productos: En esta hoja tendremos una tabla de Productos.Figura 2.

Figura 3.  Precio unitario. convertimos el dato de los productos en tabla y a la tabla le pondremos el nombre tblProductos. de los cuales tendremos la siguiente información:  Código. Teléfono. Hoja Productos En la hoja Productos estarán los productos que podremos facturar.  En la pestaña Herramientas de tabla le ponemos el nombre tblClientes a la tabla. Convertiremos este rango en Tabla para posteriormente usar el nombre de los Clientes en una Lista de validación.  Seleccionamos el rango. . Tenemos una tabla de Clientes para nuestra factura.  Marcamos la opción La tabla tiene encabezados.  Presionamos [Control] + [T].  Descripción. Siguiendo los mismos pasos que para la hoja Clientes.

Tenemos una tabla de productos para nuestra factura. en la sección Facturar a. .  Elegimos Permitir Lista y en origen ingresamos la fórmula =INDIRECTO(“tblClientes[Nombre]”). en la carátula de la Factura.Figura 4. Devolver automáticamente los datos del cliente a facturar Ahora que tenemos una tabla de Clientes.  Seleccionamos la celda B7. insertaremos una lista de validación para mostrar el nombre de los clientes y en la parte inferior se muestren los datos del cliente elegido. Obtendremos una Lista de validación con los nombres de los clientes.  Nos dirigimos a la pestaña Datos > Validación de datos.

tblClientes[#Todo]. Usaremos la fórmula: .0). para enlistar los códigos de los productos lo haremos mediante una lista de validación.”-“) Para los valores posteriores sólo reemplazaremos el número 2 por el número 3 hasta llegar al número 5 que es la columna donde está el valor del teléfono.Figura 5. Devolver automáticamente la descripción de los productos Así como en los clientes. Lista de validación para mostrar el nombre de los clientes.ERROR(BUSCARV(B7.  Nos dirigimos a la pestaña Datos > Validación de datos.2.  Elegimos Permitir Lista y en origen ingresamos la fórmula =INDIRECTO(“tblProductos[CODIGO]”).  Seleccionamos el rango B13:B23. Ahora haremos uso de la función BUSCARV para devolver los datos correspondientes al cliente elegido en la lista de validación. Ahora que tenemos la lista de Códigos. en la columna C que la columna DESCRIPCIÓN usaremos la función BUSCARV para devolver la descripción de cada producto. Ingresamos la siguiente fórmula en la celda B8 para devolver el nombre de la empresa: =SI.

Con la función BUSARV devolvemos el precio unitario de cada producto y lo multiplicamos por la cantidad. Usamos la siguiente fórmula: =SI. Calcular el subtotal por producto Ya ingresamos el código.ERROR(BUSCARV([@CÓDIGO]. Ahora nos falta calcular el IMPORTE de cada línea facturada.xlsx Si te gustó este tutorial por favor regístrate en nuestra Lista de correo y Suscríbete a nuestro canal de YouTube para que estés siempre enterado de lo nuevo que publicamos. se devolvió la descripción e ingresamos la cantidad.2. Descarga el archivo de ejemplo Factura simple que calcula el total – Parte 1 – EXCELeINFO.tblProductos[#Todo]. Recordemos que el precio unitario lo tenemos en la tabla Productos.””) Figura 6. En la columna IMPORTE ingresamos una fórmula que multiplicará la cantidad de productos por el precio unitario del producto elegido.3.tblProductos[#Todo ].0).ERROR([@CANTIDAD]*BUSCARV([@CÓDIGO].””) Figura 7. Con la función BUSCARV devolvemos la descripción del producto.=SI.0). .

La descripción del producto.  Código.  Importe. El número de unidades vendidas.  Descripción. La multiplicación de la cantidad de unidades vendidas por el precio unitario del producto. 2018 PREVIO: FACTURA EN EXCEL PARTE 1 En esta segunda entrega de nuestro Proyecto de Factura en Excel haremos uso de una macro VBA que nos servirá para guardar los datos de la factura en la hoja llamada Detalle de facturas.  Factura a. .  Cantidad.  Consecutivo. los cuales se guardará con la macro que desarrollamos. El número de la factura. Fecha de la factura. Código del producto. Hoja Detalle de facturas En la hoja llamada Detalle de facturas vamos a guardar los datos de cada factura.Factura en Excel Parte 2 – Macro VBA para guardar detalle de facturas y consecutivo BY SERGIO ALEJANDRO CAMPOS · AUGUST 30. El cliente al cual se generará la factura. Los datos que se guardarán son:  Fecha. Asimismo tendremos una fórmula que nos devolverá el último número de factura registrado el cual nos servirá para tener un consecutivo de facturas.

Usando una macro VBA guardamos el detalle de cada factura en otra hoja. etc. Ver video Factura en Excel Parte 2 Suscríbete al canal de EXCELeINFO en YouTube para aprender más de Excel y macros. Es importante considerar que en la hoja Detalle de facturas guardaremos tantas líneas como productos facturados. Producto. Cliente.Figura 1.1) La fórmula anterior es matricial por lo que debes usar la combinación de teclas [Control] + [Shift] + [Enter]. si de la factura 2 se vendieron dos productos. entonces se guardarán dos líneas con la misma factura. en la hoja Detalle de facturas. Consecutivo Al momento de guardar los datos de una factura. La fórmula es: =DESREF(B1.CONTARA(A:A). . en la celda I1 tendremos una fórmula que nos detecta la última factura guardada en la columna CONSECUTIVO.0. Fórmula matricial para detectar la última celda con valores que es la última factura guardada...CONTARA(A:A)-1. Por ejemplo. pero cada línea será un producto. Figura 2. De esa manera será más fácil realizar Reportes y Tablas dinámicas donde analicemos ventas por Fecha.

 Damos clic derecho y elegimos Asignar macro. . en la celda E4 tendremos una fórmula que simplemente realiza una suma de la última factura guardada más 1. Tenemos el consecutivo de la factura siempre actualizado. Botón Guardar Para mandar llamar a la macro insertaremos un objeto de tipo rectángulo que tendrá la etiqueta Guardar:  Nos dirigimos a la pestaña Insertar > Ilustraciones > Formas > Rectángulo. Figura 3.  Aceptar. y así siempre tendremos un consecutivo de factura automático.  Elegimos la macro GuardarFactura. Ingresamos Guardar.  Damos clic derecho al rectángulo y elegimos Modificar texto.En la hoja Factura.

Insertamos un rectángulo y le asignamos la macro GuardarFactura. Option Explicit 'EXCELeINFO 'MVP Sergio Alejandro Campos 'http://www.exceleinfo.Value .com/user/sergioacamposh 'http://blogs.es/exceleinfo Sub GuardarFactura() Dim NombreHoja As String Dim HojaDestino As Range Dim NuevaFila As Integer Dim FilasFactura As Integer Dim i As Integer Dim j As Integer Dim NumFactura As Integer NombreHoja = "Detalle de facturas" FilasFactura = Application.Sheets("Factura").youtube.com 'https://www.CountA(Range("Factura[CÓDIGO]")) NumFactura = ThisWorkbook.Range("E4").Figura 4. Código VBA de la macro La macro se llamará GuardarFactura y debe estar almacenada en un Módulo normal.itpro.WorksheetFunction.

1 + j) Next j Next i End With MsgBox "Alta exitosa".CurrentRegion NuevaFila = HojaDestino.Sheets(NombreHoja).Value = Date .Rows.Cells(12 + i.Value = Range("valCliente"). 3).Sheets(NombreHoja) For i = 1 To FilasFactura Set HojaDestino = ThisWorkbook. 2). vbInformation. j + 3).Count + 1 .Value = ThisWorkbook.Cells(NuevaFila.Cells(NuevaFila.Value = NumFactura .Cells(NuevaFila.With ThisWorkbook.Sheets("Factura").Cells(NuevaFila.com/watch?v=JWfJzOlV4XE .Range("A1"). 1). 5 Fórmulas de Excel indispensables para tu Trabajo https://www.youtube.zip Si te gustó este tutorial por favor regístrate en nuestra Lista de correo y Suscríbete a nuestro canal de YouTube para que estés siempre enterado de lo nuevo que publicamos.Value For j = 1 To 4 . "EXCELeINFO" End Sub Descarga el archivo de ejemplo Factura en Excel Parte 2 – Guardar detalle de facturas – EXCELeINFO.