Incrementar un número, solo si estoy en una hoja determinada

Supongo que a esto ya han respondido y yo no estoy encontrando la respuesta.
Lo que yo necesito es incrementar un número en una celda cada vez que deseo imprimir una hoja (Aclaración: NO QUIERO REALIZAR UN BOTÓN, por los usuarios a los que estará destinado lo que estoy haciendo, la idea es que uno pueda ir a "Archivo" "Imprimir", ya que luego selecciono las diferentes impresoras, etc. Esto yo en algún lado lo vi resuelto, pero tengo un inconveniente más, lo que yo ví que utilicé para probar y no me sirvió, son unas lineas de código que te incrementaba (por decir una celda) A5 en 1 cada vez que enviaba a imprimir esa hoja, pero el problema que tengo, es que yo dentro del EXCEL que tengo la hoja donde realizo los presupuestos, tengo otras hojas que también envío a imprimir, las cuales, no me interesa que sea afectadas por esta macro, no si se me explico.
En resumidas, necesito una macro que me incremente (por decir) A5 en 1, SI y SOLO SI, estoy en la hoja que yo le determine.
Aclaro, este archivo lo trabajo tanto desde Office 2003 y Office 2010. (No se si cambia en algo, pero por las dudas yo lo aclaro)

Espero que me puedan ayudar y muchas gracias por todo.

1 Respuesta

Respuesta
2

Pues creo que lo podemos solucionar con esta sencilla macro. Te explico:

Dentro de nuestra hoja "especial" tendremos un botón que ejecutará esta macro y te lanzará por impresora nuestra hoja e incrementará en 1 el rango A5

Sub imprimir_esta()
ActiveSheet.PrintPreview
Range("a5").Value = Range("a5").Value + 1
End Sub

 puedes sustituir el comando "printpreview" por "printout copies:=1"

Recuerda finalizar la pregunta

Buenas tardes,
Te agradezco la respuesta, y por lo que puedo ver es una parte de lo que pedí.PERO, hay un detalle, y es que no quiero poner un botón aparte, es decir, no quiero tener que colocar un botón en la hoja, sino, que con el botón que siempre se usa para imprimir sirva.
Yo había leído que si coloco esto en (no recuerdo ahora, y en la máquina que estoy no puedo ingresar a los macros por el office que tienen) worksheet o algo así, y seleccionaba la función de "before_print"o algo así, funcionaba, pero me lo hacía en cada hoja que mandaba a imprimir y yo solo quiero que me lo haga en una hoja particular SI y SOLO SI, estoy imprimiendo esa hoja. Espero haber sido claro, y sino, con gusto te respondo las dudas que te queden.
Muchas gracias por todo.
Saludos. 

Aquí tienes la solución. Esta macro es un evento que tiene que estar situada dentro del objeto thisworkbook. En mi caso estoy diciendo que si imprimo una hoja llamada "pepe" me haga un contador en la hoja "pepe" en la celda A5 y solo lo hará si imprimo la hoja "pepe"

Private Sub Workbook_BeforePrint(Cancel As Boolean)
If ActiveSheet.Name = "pepe" Then
Sheets("pepe").Range("a5").Value = Sheets("pepe").Range("a5").Value + 1
End If
End Sub

recuerda finalizar y puntuar

Muchas gracias por la respuesta, sinceramente ahora no tengo para probarlo, pero si, me comprendiste perfectamente lo que quiero, y creo que me va a servir la solución. 


Muchas gracias.
Saludos 

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas