Print Every 2 Pages to a New PDF

Twollaston

Board Regular
Joined
May 24, 2019
Messages
233
I have a few workbooks with almost 50 pages each, and I want to print every 2 pages to a PDF, so basically the end goal would be 25 pdfs made up of 2 worksheets each

For Example:
PDF1 Sheet1 and Sheet2 (sheet1 would be PDF1 page 1 and sheet2 would be PDF1 page 2)
PDF2 Sheet3 and Sheet4
PDF3 Sheet5 and Sheet6

And I was Hoping to Name the page based on Cells L5 and L3 like this =L5&" - "&L3 from the first page of each excel sheet
so PDF1 Name would be Worksheets(1) cells L5&" - "&L3(these cells are are filled with a name, and the type of report so it would look something like John Doe - Sales Report as the pdf name)

I was trying to do this with a loop to speed up time. Anybody know how to do this?
The saving path is not important, it can just go to my documents
 

Some videos you may like

Excel Facts

Whats the difference between CONCAT and CONCATENATE?
The newer CONCAT function can reference a range of cells. =CONCATENATE(A1,A2,A3,A4,A5) becomes =CONCAT(A1:A5)

DanteAmor

Well-known Member
Joined
Dec 3, 2018
Messages
12,202
Office Version
2007
Platform
Windows
Try this

Code:
Sub Print_Every_2_Pages()
    Dim i As Long, wFile As String
    Application.ScreenUpdating = False
    For i = 1 To Sheets.Count Step 2
        wFile = Sheets(i).Range("L5").Value & " - " & Sheets(i).Range("L3").Value
        Sheets(Array(Sheets(i).Name, Sheets(i + 1).Name)).Copy
        ActiveWorkbook.ExportAsFixedFormat Type:=xlTypePDF, Filename:=ThisWorkbook.Path & "\" & wFile & ".pdf"
        ActiveWorkbook.Close False
    Next
    msgbos "End"
End Sub
 

Watch MrExcel Video

Forum statistics

Threads
1,102,454
Messages
5,486,996
Members
407,575
Latest member
calc

This Week's Hot Topics

Top