Hola,
en un formulario tengo un botón que debe imprimirme en una impresora de etiquetas un código. La impresora no está predeterminada por defecto, por lo que la busco, la encuentro, la predetermino, luego debería imprimir, y entonces vuelvo a predeterminar la que estaba. Mi problema está en que no encuentro cuál es el comando concreto que me deje imprimir sólo una cadena.
Mi código es:
'codigo a imprimir
Dim otimpr As String
'nombre de la impresora predeterminada
Dim sDeviceName As String
'impresora predeterminada de inicio
Dim ImpAnt As Printer
'impresora en la que quiero imprimir
Dim ImpImpr As Printer
Debug.Print "Al empezar: " & Printer.DeviceName
'obtengo el nombre de la impresora predeterminada
sDeviceName = Printer.DeviceName
'me guardo la impresora predeterminada para al final restaurarla
Set ImpAnt = Printer
'Imprimir con la impresora que queremos
For Each ImpImpr In Printers
If ImpImpr.DeviceName = "\\Recepcion02\ZDesigner LP 2824" Then
Set Printer = ImpImpr
Exit For
End If
Next
'obtengo el la cadena que quiero imprimir
otimpr = Texto61.Value
'Imprimir sólo la cadena
'es aqui donde no me funciona
'el error es:
'el objeto no admite esta propiedad o metodo
'he buscado y no encuentro de que manera imprimir solo una cadena
Printer.Print otimpr
'Restablecer la impresora original
If ImpAnt.DeviceName <> sDeviceName Then
For Each ImpAnt In Printers
If ImpAnt.DeviceName = sDeviceName Then
Set Printer = ImpAnt
Exit For
End If
Next
End If
Debug.Print "Al finalizar: " & Printer.DeviceName
Me anticipo a daros las gracias por vuestra ayuda.
Saludos.