Contador en una celda

Me gustaría saber como hacer un contador con macros, por ejemplo.
Quiero hacer un control de facturas, y cada vez que abra el macro haya un numero que se cambio
Factura # 1
Abro el mismo macro pero esta vez se abriria
Factura # 2
Si es posible si me pudieran pasar lo códigos y solo tenga que cambia la celda.

1 respuesta

Respuesta
2
Como las macros no se abren, sino lo que se abre es el libro, o la hoja de facturas, tendrás que decidir cuándo se debe incrementar la celda donde tendrás este contador.
1 - Por ej, esta rutina te incrementa la celda A2 de la hoja1 cada vez que abrís el libro:
Private Sub Workbook_Open()
Sheets("Hoja1").Range("A2") = Sheets("Hoja1").Range("A2") + 1
End Sub

2- Por ej, esta lo hace cada vez que ejecutes una macro que guarda y limpia el formulario:
Sub guardaFact()
'tus instrucciones de copiado a otra hoja o guardado de la hoja, etc
'tus lineas que limpian el formato
'incrementa el contador
Sheets("Hoja1").Range("A2") = Sheets("Hoja1").Range("A2") + 1

End Sub
La primera se guarda en el Editor, seleccionando con doble clic el objeto ThisWorkbook (del panel que verás a tu izquierda)
La segunda seguramente ya la tendrás en un módulo
Sdos. Si necesitas alguna otra aclaración, detallá un poco más cómo tenés planteado tu libro de fact.
Te recuerdo que ya hace 1 semana que te envié respuesta a tu consulta.
Si el tema quedó concluido, no olvides finalizarla.
Sdos
Elsa
Je je, tengo una duda para finalizar esto...
Se puede ejecutar un macro pre-hecho, simultáneamente con la segunda opción
me explico, Mi macro se llama
Factura pero aparece otro
guardarfact
El segundo es el que tiene el contador, pero quiero que con una sola combinación se ejecuten ambos.. ¿se puede? Ej. Alt+W
y que al mismo tiempo se pongo otro formulario en blanco con el numero siguiente
y esta es mi pregunta para finalizar la pregunta, siento la demora
Gracias
Sin ver tu macro 'Factura' me es un poco difícil indicarte dónde colocar las líneas de incremento.
Pero tené en cuenta lo siguiente: si tu macro tiene las instrucciones para guardar la fact, evaluá si debe incrementar el contador antes o después. Y allí colocá solo esta línea de la rutina que te envié en pto 2 (ajustando obviamente la referencia de hoja y celda)
'incrementa el contador
Sheets("Hoja1").Range("A2") = Sheets("Hoja1").Range("A2") + 1
Si lo tiene que incrementar luego de guardar, colocala a continuación de las líneas de limpieza.
---------------------------------
Comprenderás que es casi imposible 'adivinar' las rutinas que ya tiene cada usuario. Si esto no resuelve el problema, no dejes la consulta abierta, se puede seguir solicitando aclaraciones hasta agotar el tema.
Y por supuesto, cuánta más precisión tenga la consulta más precisa sale la respuesta ;)
Muchas gracias!
Lo que pasaba era que mi tía no me había mandado el documento así que no podía decirle si me funciono de la manera que quería, pero ya esta resuelto, nunca había trabajado con macro pero con su ayuda fue bastante fácil.
Para que sepa en que me ayudo, le ensenio lo que hice
Primero Cree un Modulo<Limpiar>
Con este cada vez que se ejecute dicho macro, se borren las celdas seleccionadas:
Sub Limpiar()
Range("D7,C8,C9,B14:B16,C14:C16,D14:D16,J14:J16,D32,C33,C34,B39:B41,C39:C41,D39:D41,J39:J41").ClearContents
End Sub
Luego Cree otro Modulo <Contador>
Sub Contador()
Sheets("Hoja1").Range("L5,L30") = Sheets("Hoja1").Range("L5,L30") + 1
End Sub
Y para que se ejecuten al mismo tiempo cree otro modulo <Factura>(Esto lo encontré en una de sus respuestas en la página)
Sub Factura()
Call Limpiar
Call Contador
End Sub
Y lo puse para que se ejecutara con Ctrl+f
Gracias, me queda una duda pero creo que debo abrir otra pregunta para esto así que espero que me ayude en esa :)
Entre sin saber nada, y salí con saber algo :P
Muchas Gracias

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas