Macros en excel

Tengo dos preguntas para ti, la primera es: ¿Cómo puedo ejecutar una macro sin que salte de hoja en hoja mientras se ejecuta?, y la segunda es: ¿En una macro cuando envío una impresión como puedo saber si se canceló por alguna razón o se realizó la impresión?.
Gracias

1 Respuesta

Respuesta
1
Respuesta a la primera pregunta
Public Sub Mi_Macro()
'Aqui pones esta linea
Application.ScreenUpdating = False
'Aqui iria tu codigo
'Al final de la macro, volvemos a actualizar la pantalla
Application.ScreenUpdating = True
End Sub
La propiedad ScreenUpdating del objeto Application, evita que "veas" lo que hace la macro, o sea, no va actualizando las acciones
Para la segunda respuesta, te comento lo siguiente, cuando tu mandas a imprimir con código, por ejemplo:
ActiveWindow.SelectedSheets.PrintOut Copies:=1
Excel manda el trabajo a la cola de impresión y el SO o sea Windows toma el control de este, por lo tanto desde una macro no hay forma de controlar esto, pero "casi" estoy seguro de que con API si se podría, solo que tendría que buscarla haber si la hay y también es un poco más complejo (no tanto) usar API.
Mil Gracias, ya que me ha servido lo de actualizar la pantalla.
Y es correcto con la impresión lo mando con
ActiveWindow.SelectedSheets.PrintOut Copies:=1
pero tengo el problema que no se cuando se imprime correcto o no, si sabes como hacerlo de una manera no muy compleja, me lo dejas saber.
Pero agradezco tu tiempo y esfuerzo.
Robec

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas