Área de impresión que cambia

Necesito una macro que seleccione un área de impresión que comenzando siempre en A1, en algunas ocasiones tenga que seleccionar, por ejemplo, desde A1 hasta I25. ¿Por qué este rango?. Pues porque hay datos hasta la celda A25.

Resumiendo que la macro recorra la columna A y cuando encuentre la última celda con datos, cree un rango de impresión desde A1 hasta la columna I que corresponda.

Agradeciendo el tiempo que dedican a personas como yo que no tenemos muchos conocimiento pero vuestra ayuda simplifica mucho nuestro trabajo.

1 respuesta

Respuesta
1

Te anexo la macro

Sub AreaImpresion()
'Por.Dante Amor
    u = Range("A" & Rows.Count).End(xlUp).Row
    With ActiveSheet.PageSetup
        .LeftHeader = ""
        .CenterHeader = ""
        .RightHeader = ""
        .LeftFooter = ""
        .CenterFooter = ""
        .RightFooter = ""
        .LeftMargin = Application.InchesToPoints(0.708661417322835)
        .RightMargin = Application.InchesToPoints(0.708661417322835)
        .TopMargin = Application.InchesToPoints(0.748031496062992)
        .BottomMargin = Application.InchesToPoints(0.748031496062992)
        .HeaderMargin = Application.InchesToPoints(0.31496062992126)
        .FooterMargin = Application.InchesToPoints(0.31496062992126)
        .PrintHeadings = False
        .PrintGridlines = False
        .PrintComments = xlPrintNoComments
        .PrintQuality = 600
        .CenterHorizontally = False
        .CenterVertically = False
        .Orientation = xlPortrait
        .Draft = False
        .PaperSize = xlPaperLetter
        .FirstPageNumber = xlAutomatic
        .Order = xlDownThenOver
        .BlackAndWhite = False
        .Zoom = False
        .FitToPagesWide = 1
        .FitToPagesTall = 1
        .PrintErrors = xlPrintErrorsDisplayed
        .OddAndEvenPagesHeaderFooter = False
        .DifferentFirstPageHeaderFooter = False
        .ScaleWithDocHeaderFooter = True
        .AlignMarginsHeaderFooter = True
        .EvenPage.LeftHeader.Text = ""
        .EvenPage.CenterHeader.Text = ""
        .EvenPage.RightHeader.Text = ""
        .EvenPage.LeftFooter.Text = ""
        .EvenPage.CenterFooter.Text = ""
        .EvenPage.RightFooter.Text = ""
        .FirstPage.LeftHeader.Text = ""
        .FirstPage.CenterHeader.Text = ""
        .FirstPage.RightHeader.Text = ""
        .FirstPage.LeftFooter.Text = ""
        .FirstPage.CenterFooter.Text = ""
        .FirstPage.RightFooter.Text = ""
    End With
    ActiveSheet.PageSetup.PrintArea = "A1:I" & u
End Sub

S a l u d o s . D a n t e   A m o r

Recuerda valorar la respuesta.

¡Gracias!  y siento mucho la perdida de su familiar. Un abrazo cordial.

Gracias, un abrazo.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas