Access - Como imprimir en varias impresoras

 
Vista:
sin imagen de perfil

Como imprimir en varias impresoras

Publicado por Manuel Campos (2 intervenciones) el 10/10/2001 03:03:11
Hola

Estoy tratando de hacer lo siguiente
Una vez que se ha creado una factura y al usuario enviarla a imprimir a la impresora predeterminada, cada renglon de la misma tiene un documento asociado que debe imprimirse en otra. Como puedo hacer esto sin que el usuario tenga que seleccionar la impresora desde el cuadro de dialogo. Una vez impresos los documentos debe quedar la impresora predeterminada del sistema activa.

Gracias!!!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

Como imprimir en varias impresoras

Publicado por Alejandro (4142 intervenciones) el 18/04/2023 23:28:11
Para imprimir en varias impresoras en Access, puedes utilizar el objeto Printer de Visual Basic para configurar cada impresora antes de enviar la salida a la impresora. Aquí hay un ejemplo de cómo hacer esto:

1. Abre el informe que deseas imprimir en varias impresoras.
2. Ve a la pestaña "Diseño" y haz clic en el botón "Código" en la cinta de opciones para abrir el editor de código.
3. En la sección "Declaraciones Generales", declara las variables que utilizarás para guardar las configuraciones de las impresoras:

1
2
Dim objPrinter1 As Printer
Dim objPrinter2 As Printer

4. En la sección "Declaraciones de Eventos", agrega el siguiente código para configurar cada impresora antes de imprimir:

1
2
3
4
5
6
7
8
9
10
11
Private Sub Report_Open(Cancel As Integer)
    'Configura la primera impresora
    Set objPrinter1 = Application.Printers("NombreImpresora1")
    objPrinter1.Orientation = acPRORLandscape
    objPrinter1.PaperSize = acPRPSLegal
 
    'Configura la segunda impresora
    Set objPrinter2 = Application.Printers("NombreImpresora2")
    objPrinter2.Orientation = acPRORPortrait
    objPrinter2.PaperSize = acPRPSLetter
End Sub

En este ejemplo, se configura la primera impresora para imprimir en orientación horizontal y tamaño de papel legal, mientras que la segunda impresora se configura para imprimir en orientación vertical y tamaño de papel carta.

5. En la sección "Declaraciones de Eventos", agrega el siguiente código para imprimir cada página en ambas impresoras:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Private Sub PageHeaderSection_Print(Cancel As Integer, PrintCount As Integer)
    'Imprime la página actual en la primera impresora
    objPrinter1.PrinterName = Application.Printer.DeviceName
    objPrinter1.PrinterDriver = Application.Printer.DriverName
    objPrinter1.PrinterPort = Application.Printer.Port
 
    Me.PrintSection
 
    'Imprime la página actual en la segunda impresora
    objPrinter2.PrinterName = Application.Printer.DeviceName
    objPrinter2.PrinterDriver = Application.Printer.DriverName
    objPrinter2.PrinterPort = Application.Printer.Port
 
    Me.PrintSection
End Sub

En este ejemplo, se utiliza el evento "PageHeaderSection_Print" para imprimir cada página en ambas impresoras. El método "PrintSection" se utiliza para imprimir la página actual.

6. Guarda el informe y cierra el editor de código.

Con este código, cada página del informe se imprimirá automáticamente en ambas impresoras configuradas sin que el usuario tenga que seleccionarlas manualmente. Además, la impresora predeterminada del sistema quedará activa después de imprimir los documentos asociados a cada renglón de la factura.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar