Excel - Print Out Multiple Ranges Several Sheets

This macro prints out multiple ranges in several worksheets.


  • 644
  • 364
  • 0
  • 0
Add to collection
© 2021VBAmacros.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!


' 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
        ' Delete temp sheet
        Application.DisplayAlerts = False
        Application.DisplayAlerts = True
    End With
End Sub

Sort by:
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.
VBAmacros.net VBAmacros.net
Code was successfully copied!
VBAmacros.net VBAmacros.net
Please sign in!
VBAmacros.net VBAmacros.net
You've already voted!