Te anexo la macro para imprimir los recibos fijos
Private Sub CommandButton4_Click()
'Por.Dante Amor
Application.ScreenUpdating = False
Set h3 = Sheets("Recibo Obreros Fijos ")
Set h4 = Sheets("Formato")
h4.Cells.Clear
h4.DrawingObjects.Delete
'
h3.Range("A7:H" & h3.Range("C" & Rows.Count).End(xlUp).Row).Copy
h4.Range("A" & 1).PasteSpecial Paste:=xlValues
h4.Range("A" & 1).PasteSpecial Paste:=xlFormats
u3 = h4.Range("C" & Rows.Count).End(xlUp).Row + 2
h4.Range("A" & u3).PasteSpecial Paste:=xlValues
h4.Range("A" & u3).PasteSpecial Paste:=xlFormats
h4.Range("A" & 2).PasteSpecial Paste:=xlPasteColumnWidths
'
CopiarImagen2 h3, h4, 3
CopiarImagen2 h3, h4, u3 + 2
'
With h4.PageSetup
.PrintArea = "A1:G" & h4.Range("C" & Rows.Count).End(xlUp).Row
.Orientation = xlPortrait
.FitToPagesWide = 1
.FitToPagesTall = 1
.LeftMargin = Application.InchesToPoints(0.590551181102362)
.RightMargin = Application.InchesToPoints(0.590551181102362)
.TopMargin = Application.InchesToPoints(0.393700787401575)
.BottomMargin = Application.InchesToPoints(0.393700787401575)
.HeaderMargin = Application.InchesToPoints(0)
.FooterMargin = Application.InchesToPoints(0)
End With
'
h4.PrintOut Copies:=1, Collate:=True
h3.Select
MsgBox "Impresión realizada", vbInformation, "IMPRIMIR RECIBO"
End Sub
'
Sub CopiarImagen2(h3, h4, u3)
'Por.Dante Amor
h3.Shapes("Imagen 1").Copy
h4.Select
h4.Paste
Selection.Top = h4.Range("B" & u3).Top
Selection.Left = h4.Range("B" & u3).Left + 20
h3.Shapes("Imagen 2").Copy
h4.Paste
Selection.Top = h4.Range("G" & u3).Top
Selection.Left = h4.Range("G" & u3).Left + 5
End Sub