Saber cual seleccion hace el usuario

02/01/2006 - 11:06 por Mauro Jesús | Informe spam
Saludos a todos!

Por lo que he visto, cuando selecciona la vista preliminar de una hoja o
cuando la mando a imprimir, se genera el
evento Workbook_BeforePrint para ambos casos, mi duda es:
¿ Se puede saber si el usuario selecciona la vista preliminar o manda a
imprimir ?

La idea de esto, es que tengo un formato vacío que lleva un contador
(folio), el usuario lo llena y cuando lo manda a imprimir, se genera un
archivo de este formato que es una copia con los datos q capturó el usuario,
lo protejo contra escritura, lo guardo (con otro nombre) y lo cierro.
Posteriormente limpio el contenido del formato original y le incremento el
folio, guardo el formato para conservar el folio (todo esto por código), y
bloqueo para que el usuario no pueda grabar en este formato (es como una
plantilla). El código para incrementarlo lo puse en este evento, pero si el
usuario selecciona la vista preliminar, hace todo lo anterior y esto lo debe
hacer únicamente cuando mande a imprimir. de ahí que me interesa saber si se
puede distinguir cuando el usuario selecciona vista preliminar o selecciona
imprimir.

Nuevamente Saludos y agradezco de antemano sus comentarios y/o respuestas.

Mauro Jesús

Preguntas similare

Leer las respuestas

#1 KL
03/01/2006 - 00:28 | Informe spam
Hola Mauro Jesus,

Malas noticias. No se puede distinguir entre las dos cosas (al menos Excel no tiene un evento distinto para cada una de las
situaciones. Ademas, no se si te has dado cuenta de que el evento se dispara en varias situaciones distintas (no dos):

1) Cuando pulsas el menu Archivo>Imprimir... o pulsas el atajo de teclado correspondiente. Es decir al llamar el dialogo de
impresion (?!Y que pasa si luego pulsas cancelar?!)
2) Cuando pulsas el boton 'Imprimir' en la barra de herramientas 'Estandar' (Aqui no hay problema)
3) Cuando pulsas el boton 'Vista Previa' en la barra de herramientas 'Estandar' (como ya has dicho no quiere decir que vaya a
imprimir!!!)
4) Cuando pulsas el menu Archivo>Vista Previa... o pulsas el atajo de teclado correspondiente (lo mismo que el punto anterior)
5) Cuando pulsas el boton 'Imprimir' en la barra de herramientas de la ventana de Vista Previa (en este caso ya sera la segunda
vez!!!)
6) Cuando mandas algo a imprimir por codigo, p.ej.: Sheet1.Range("a1").PrintOut (Aqui no hay problema)

Quizas me haya olvidado de algun supuesto mas pero creo que queda mas o menos claro con que nos estamos enfrentando ;-)

Creo que la mejor solucion seria la siguiente:
1) Prohibir toda impresion o vista previa que sea atraves de los medios estandares. Esto lo consigues mediante:

Private Sub Workbook_BeforePrint(Cancel As Boolean)
Cancel = True
End Sub

2) Crear un boton y/o un formulario con codigo personalizado que maneje la impresion de manera deseada. Un ejemplo:
http://j-walk.com/ss/excel/tips/tip48.htm

Saludos,
KL

Saludos,
KL


"Mauro Jesús" wrote in message news:
Saludos a todos!

Por lo que he visto, cuando selecciona la vista preliminar de una hoja o
cuando la mando a imprimir, se genera el
evento Workbook_BeforePrint para ambos casos, mi duda es:
¿ Se puede saber si el usuario selecciona la vista preliminar o manda a
imprimir ?

La idea de esto, es que tengo un formato vacío que lleva un contador
(folio), el usuario lo llena y cuando lo manda a imprimir, se genera un
archivo de este formato que es una copia con los datos q capturó el usuario,
lo protejo contra escritura, lo guardo (con otro nombre) y lo cierro.
Posteriormente limpio el contenido del formato original y le incremento el
folio, guardo el formato para conservar el folio (todo esto por código), y
bloqueo para que el usuario no pueda grabar en este formato (es como una
plantilla). El código para incrementarlo lo puse en este evento, pero si el
usuario selecciona la vista preliminar, hace todo lo anterior y esto lo debe
hacer únicamente cuando mande a imprimir. de ahí que me interesa saber si se
puede distinguir cuando el usuario selecciona vista preliminar o selecciona
imprimir.

Nuevamente Saludos y agradezco de antemano sus comentarios y/o respuestas.

Mauro Jesús




Respuesta Responder a este mensaje
#2 Mauro Jesus
04/01/2006 - 10:36 | Informe spam
Ya me temia que no se podia! :(
Pero es una muy buena opcion la que me comentas sobre el icono
personalizado,
Gracias por tus comentarios y tu respuesta !!!


"KL" escribio en el mensaje
news:#4dCKS$
Hola Mauro Jesus,

Malas noticias. No se puede distinguir entre las dos cosas (al menos Excel


no tiene un evento distinto para cada una de las
situaciones. Ademas, no se si te has dado cuenta de que el evento se


dispara en varias situaciones distintas (no dos):

1) Cuando pulsas el menu Archivo>Imprimir... o pulsas el atajo de teclado


correspondiente. Es decir al llamar el dialogo de
impresion (?!Y que pasa si luego pulsas cancelar?!)
2) Cuando pulsas el boton 'Imprimir' en la barra de herramientas


'Estandar' (Aqui no hay problema)
3) Cuando pulsas el boton 'Vista Previa' en la barra de herramientas


'Estandar' (como ya has dicho no quiere decir que vaya a
imprimir!!!)
4) Cuando pulsas el menu Archivo>Vista Previa... o pulsas el atajo de


teclado correspondiente (lo mismo que el punto anterior)
5) Cuando pulsas el boton 'Imprimir' en la barra de herramientas de la


ventana de Vista Previa (en este caso ya sera la segunda
vez!!!)
6) Cuando mandas algo a imprimir por codigo, p.ej.:


Sheet1.Range("a1").PrintOut (Aqui no hay problema)

Quizas me haya olvidado de algun supuesto mas pero creo que queda mas o


menos claro con que nos estamos enfrentando ;-)

Creo que la mejor solucion seria la siguiente:
1) Prohibir toda impresion o vista previa que sea atraves de los medios


estandares. Esto lo consigues mediante:

Private Sub Workbook_BeforePrint(Cancel As Boolean)
Cancel = True
End Sub

2) Crear un boton y/o un formulario con codigo personalizado que maneje la


impresion de manera deseada. Un ejemplo:
http://j-walk.com/ss/excel/tips/tip48.htm

Saludos,
KL

Saludos,
KL


"Mauro Jesús" wrote in message


news:
> Saludos a todos!
>
> Por lo que he visto, cuando selecciona la vista preliminar de una hoja o
> cuando la mando a imprimir, se genera el
> evento Workbook_BeforePrint para ambos casos, mi duda es:
> ¿ Se puede saber si el usuario selecciona la vista preliminar o manda a
> imprimir ?
>
> La idea de esto, es que tengo un formato vacío que lleva un contador
> (folio), el usuario lo llena y cuando lo manda a imprimir, se genera un
> archivo de este formato que es una copia con los datos q capturó el


usuario,
> lo protejo contra escritura, lo guardo (con otro nombre) y lo cierro.
> Posteriormente limpio el contenido del formato original y le incremento


el
> folio, guardo el formato para conservar el folio (todo esto por código),


y
> bloqueo para que el usuario no pueda grabar en este formato (es como una
> plantilla). El código para incrementarlo lo puse en este evento, pero si


el
> usuario selecciona la vista preliminar, hace todo lo anterior y esto lo


debe
> hacer únicamente cuando mande a imprimir. de ahí que me interesa saber


si se
> puede distinguir cuando el usuario selecciona vista preliminar o


selecciona
> imprimir.
>
> Nuevamente Saludos y agradezco de antemano sus comentarios y/o


respuestas.
>
> Mauro Jesús
>
>
>
>

email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida