.
En infinidades de veces se necesita crear un autonumérico en Excel es decir alguna forma que al ir ingresando datos se determine en forma automática el próximo número, normalmente se necesita contar con esta macro cuando se guardan facturas correlativas y se necesita que una vez guardada automáticamente se determine el número de factura siguiente, también puede ser número de recibo o determinar el número del próximo registro.
Antes de seguir recomiendo leer un excelente libro sobre Excel que te ayudará operar las planillas u hojas de cálculo, haz click acá, si quieres aprender sobre Excel, en inglés, entonces debes hacer click here. Si lo que necesitas es aprender o profundizar sobre la programación de macros con VBA este es unos de los mejores cursos on line que he visto en internet.
Luego de haber cargado los datos del Cliente en B3, del Detalle en B4 y el Importe en B5, al presionar el botón se guardan los datos en la hoja DBFac, previamente validada que se hayan cargado los datos de B3 a B5, una vez guardado los datos se genera el próximo número de la factura o comprobante en forma automática.
El vídeo que sigue muestra una explicación más detallada y gráfica de la macro presentada, recomiendo observar para una más fácil comprensión de la macro; suscribe a nuestra web desde la parte superior derecha de la página ingresando tu mail y a nuestro canal de You Tube para recibir en tu correo vídeos explicativos sobre macros interesantes, como por ejemplo formulario que crea un listado de todas las hojas para poder luego seleccionarlas, buscar en listbox mientras escribes en textbox, ordenar hojas libro excel por su nombre, conectar Excel con Access y muchos ejemplos más.
if (payload.eventType == ‘subscribe’) {
// Add code to handle subscribe event.
} else if (payload.eventType == ‘unsubscribe’) {
// Add code to handle unsubscribe event.
}
if (window.console) { // for debugging only
window.console.log(‘YT event: ‘, payload);
}
}
Código que se inserta en un módulo
Sub Autonúmerico()
On Error Resume Next
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Dim uf As Long
Dim fila As Integer
If Sheets(«Factura»).Range(«B2») = Empty Or Sheets(«Factura»).Range(«B3») = Empty Or Sheets(«Factura»).Range(«B4») = Empty Or Sheets(«Factura»).Range(«B5») = Empty Then
MsgBox («Debe ingresar todos los datos»), vbCritical, «AVISO»
Exit Sub
End If
uf = Sheets(«DBFac»).Range(«A» & Rows.Count).End(xlUp).Row
Sheets(«DBFac»).Cells(uf + 1, «A») = Sheets(«Factura»).Cells(2, «B»)
Sheets(«DBFac»).Cells(uf + 1, «B») = Sheets(«Factura»).Cells(3, «B»)
Sheets(«DBFac»).Cells(uf + 1, «C») = Sheets(«Factura»).Cells(4, «B»)
Sheets(«DBFac»).Cells(uf + 1, «D») = Sheets(«Factura»).Cells(5, «B»)
Sheets(«Factura»).Range(«B2:B5»).ClearContents
Sheets(«Factura»).Cells(2, «B») = Application.WorksheetFunction.Max(Sheets(«DBFac»).Range(«A2» & «:A» & uf + 1)) + 1
Application.ScreenUpdating = True
Application.DisplayAlerts = True
End Sub
On Error Resume Next
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Dim uf As Long
Dim fila As Integer
If Sheets(«Factura»).Range(«B2») = Empty Or Sheets(«Factura»).Range(«B3») = Empty Or Sheets(«Factura»).Range(«B4») = Empty Or Sheets(«Factura»).Range(«B5») = Empty Then
MsgBox («Debe ingresar todos los datos»), vbCritical, «AVISO»
Exit Sub
End If
uf = Sheets(«DBFac»).Range(«A» & Rows.Count).End(xlUp).Row
Sheets(«DBFac»).Cells(uf + 1, «A») = Sheets(«Factura»).Cells(2, «B»)
Sheets(«DBFac»).Cells(uf + 1, «B») = Sheets(«Factura»).Cells(3, «B»)
Sheets(«DBFac»).Cells(uf + 1, «C») = Sheets(«Factura»).Cells(4, «B»)
Sheets(«DBFac»).Cells(uf + 1, «D») = Sheets(«Factura»).Cells(5, «B»)
Sheets(«Factura»).Range(«B2:B5»).ClearContents
Sheets(«Factura»).Cells(2, «B») = Application.WorksheetFunction.Max(Sheets(«DBFac»).Range(«A2» & «:A» & uf + 1)) + 1
Application.ScreenUpdating = True
Application.DisplayAlerts = True
End Sub
.
If this post was helpful INVITE ME A COFFEE and so help keep up the page, CLICK to download free example.
Si te gustó por favor compártelo con tus amigos
If you liked please share it with your friends