I use PDFCreator which is free
Dim PDFJob As Object 'PDFCreator.clsPDFCreator
Dim sh As Worksheet
Dim Filename As String
Set PDFJob = CreateObject("PDFCreator.clsPDFCreator")
With PDFJob
If .cStart("/NoProcessingAtStartup") = False Then
' ThisApp.Error "Can't initialize PDFCreator."
Exit Sub
End If
For Each sh In ActiveWorkbook.Worksheets
Filename = sh.Name
.cOption("UseAutosave") = 1
.cOption("UseAutosaveDirectory") = 1
.cOption("AutosaveDirectory") = "C:\temp"
.cOption("AutosaveFilename") = Filename & ".pdf"
.cOption("AutosaveFormat") = 0 ' 0 = PDF
.cClearCache
sh.PrintOut copies:=1, ActivePrinter:="PDFCreator"
Next sh
'Wait until the print job has entered the print queue
Do Until .cCountOfPrintjobs = 1
DoEvents
Loop
.cPrinterStop = False
'Wait until PDF creator is finished then release the objects
Do Until PDFJob.cCountOfPrintjobs = 0
DoEvents
Loop
.cClose
End With
Set PDFJob = Nothing
Bookmarks