Excel - Print Out Multiple Ranges Several Sheets
This macro prints out multiple ranges in several worksheets.
Excel
© 2025VBAmacros.net
1 Open MS Excel.
2 Create a blank workbook.

3 Go to Developer's tab > click on "Visual Basic" button or hit Alt + F11.

4 Go to Insert tab > click on "Module" or hit M.

5 Copy the VBA code from below.
6 Paste the code in the newly created module.

7 Go to Run tab > click on "Run Sub/UserForm" or hit F5.

8 That's it!


Advertisement
Code
'=============================================
' Print Out Multiple Ranges In Several Sheets
'=============================================
Sub printOutMultipleRangesSeveralSheets()
' Add temp sheet
Worksheets.Add Before:=Worksheets(1)
' Use temp sheet
With Worksheets(1)
' Copy range 1
Worksheets(2).Range("A1:A10").CopyPicture Appearance:=xlPrinter
.Paste Destination:=.Range("A1")
' Copy range 2
Worksheets(2).Range("B1:B10").CopyPicture Appearance:=xlPrinter
.Paste Destination:=.Range("A11")
' Copy range 3 sheet 2
Worksheets(3).Range("A1:A10").CopyPicture Appearance:=xlPrinter
.Paste Destination:=.Range("A21")
' Copy range 4 sheet 2
Worksheets(3).Range("B1:B10").CopyPicture Appearance:=xlPrinter
.Paste Destination:=.Range("A31")
' Print out
.PrintOut
' Delete temp sheet
Application.DisplayAlerts = False
.Delete
Application.DisplayAlerts = True
End With
End Sub
Advertisement
Comments
Advertisement
Advertisement
Code was successfully copied!
Link was successfully copied!