Macro Establecer Áreas de Impresión

Esta macro activa las tres primeras hojas y fija el área de impresión en el rango seleccionado, de esta forma para un conjunto de hojas no tendríamos que estar seleccionando cada una de ellas para fijarlas, si en todas es es igual podríamos usarla para imprimir el libro de Excel de una forma rápida.

Sub Area_Impresion()

‘ Seleccionar Áreas
    Dim i As Integer

        For i = 1 To 3
            Sheets(i).Activate
            Range(«B5:D10,B13:D20»).Select
            ActiveSheet.PageSetup.PrintArea = «$B$5:$D$10,$B$13:$D$20»
        Next i
‘ Imprimir las Áreas

    ActiveWorkbook.PrintOut Copies:=1, Collate:=True, IgnorePrintAreas:=False
    
End Sub

11 respuestas a “Macro Establecer Áreas de Impresión

Add yours

      1. Esto no parece correcto, pues el rango para el área de impresión se determina en la fórmula: ActiveSheet.PageSetup.PrintArea = “$B$5:$D$10,$B$13:$D$20”; y no en la anterior, que es solo la selección de un rango.

        La pregunta es si se puede escribir el área de impresión con variables y no con una linea de texto «…»

        Si aprendo cómo, actualizaré mi comentario.

        Saludos!

      2. Hola, gracias por seguir el blog.

        Es cierto que la parte de código Range(«B5:D10,B13:D20»).Select , selecciona las celdas, está añadido sólo para mostrar el rango seleccionado en la impresión a modo informativo, lo puedes quitar. Lo suelo poner por si se ejecuta la macro paso a paso «F8», a veces ayuda a entenderla.
        Se puede escribir el área de impresión utilizando variables, es lo habitual, este ejemplo es sólo un ejemplo sencillo.
        Puedes echar un vistazo al post https://exceltrucos.com/2016/01/12/comparar-listados/ , en este código puedes ver cómo asignar a una variable el valor de la fila o columna.

        También tienes un manual muy bueno dónde explica muy bien el trabajo con Variables. https://exceltrucos.com/2014/11/25/manual-excel-macros-vba-visual-basic/

  1. Hola.
    Buscando por la red sobre el área de impresión en excel, llegue a tu foro y veo que tenias un manual para el uso de la variables en excel, lo quise bajar para aprender un poco más sobre el tema, pero desgraciadamente ya no esta donde el enlace.

    Te sería posible enviarmelo si aún lo tienes a mí correo.

    Te agradezco anticipadamente

  2. Buenas Noches soy nuevo en esto quisiera hacer una macro que imprima un rango seleccionado en una hoja especifica, hice esto pero algo no me sale
    Sub Imprime1()

    Application.ScreenUpdating = False

    If MsgBox(«¿Desea Imprimir?», vbQuestion + vbYesNo) = vbYes Then
    ‘———————————————-

    Dim HResumen As Worksheet
    Set HResumen = Worksheets(«BOLETA»)
    »’===============================================================================
    HResumen.Range(«A2:J43″).Select
    Selection.PrintOut Copies:=2, Collate:=True, IgnorePrintAreas:=False
    »’===============================================================================
    HResumen.Range(«C1»).Select

    End If

    End Sub

Replica a ExcelTrucos Cancelar la respuesta

Crea una web o blog en WordPress.com

Subir ↑