Establecer una impresora en macro excel

Realicé una macro que envía una impresión de la hoja1 a mi impresora predeterminada (impresora1), y seguido de ello envía impresión de la hoja 2 en otra impresora diferente "HP DeskJet 3700 series en Ne06:".

Me sucedió que se apagó el ordenador (se desconectó de la corriente porque se cambió de lugar), y al encenderla nuevamente, ya no era "Ne06:" sino "Ne03:"

¿Qué puedo hacer para que mi impresora siempre sea la misma?.

Consideración importante: La macro establece la impresora y restablece la predeterminada porque la impresora HP sólo se utiliza para un tipo específico de documento.

Sub imprimirdoc
Dim defi As String
    defi = Application.ActivePrinter
    ActiveSheet.PrintOut From:=1, To:=1, Copies:=1, ActivePrinter:="HP DeskJet 3700 series en Ne03:", Collate:=True, IgnorePrintAreas:=False
    Application.ActivePrinter = defi
End sub
Respuesta

[Hola

El puerto (lpt, usb, etc.) no está determinado por la impresora sino por el sistema. Aunque sea la misma impresora, el hecho de cambiar, por ejemplo, el puerto usb al que está conectada, hace que varíe el número que ves posterior a la sílaba "Ne". Ojo que si estamos hablando de una red, es mucho más "volátil" aún. Las formas serían que elijas de manera "manual" siempre la impresora o crear una rutina que elija la impresora por las primera palabras, lo que requiere programar bastante y no sé cuál es tu nivel de VBA. No ofrezco hacer eso último yo, ya que va más allá de los tiempos ad honorem que algunos damos por aquí.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas