Realiza lo siguiente.
Activa la grabadora de macro.
Selecciona una hoja que vayas a imprimir. Entra al menú de Configuración de página, actualiza los datos de la impresión: Portrait, letter, márgenes, etc.
Regresa a apagar la grabadora de macros.
Toma el código que te generó la macro y lo pones dentro del siguiente código:
Sub Macro2()
'
' Macro2 Macro
'
'
For Each h In Sheets
h.Select
'
'en esta parte pon el código que te generó la macro
'fin del código que te generó la macro
'
ActiveSheet.PageSetup.PrintArea = "$A$1:$I$58"
ActiveSheet.PrintOut
Next
End Sub
Ejemplo del resultado final:
Sub Macro2()
'
' Macro2 Macro
'
'
For Each h In Sheets
h.Select
'
'en esta parte pon el código que te generó la macro
With ActiveSheet.PageSetup
.PrintTitleRows = ""
.PrintTitleColumns = ""
End With
ActiveSheet.PageSetup.PrintArea = ""
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
.FirstPageNumber = xlAutomatic
.Order = xlDownThenOver
.BlackAndWhite = False
.Zoom = 100
.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
'fin del código que te generó la macro
'
ActiveSheet.PageSetup.PrintArea = "$A$1:$I$58"
ActiveSheet.PrintOut
Next
End Sub
Sal u dos , Dante Amor, No olvides valorar la respuesta.
.