Private Sub CommandButton1_Click()
Dim PDF As Object 'clsPDFCreator
Dim A$
Dim chemin$
Dim fichier$
Dim DefaultPrinter$
On Error GoTo Erreur
DefaultPrinter$ = Application.ActivePrinter
Set PDF = CreateObject("PDFCreator.clsPDFCreator")
If PDF.cStart("/NoProcessingAtStartup") = False Then
MsgBox "PDFCreator n'a pu être chargé."
Exit Sub
End If
ActiveSheet.PageSetup.PrintArea = Range("i2").Value
A$ = TextBox1.Value
chemin$ = Mid(A$, 1, InStrRev(A$, "\"))
fichier$ = Mid(A$, Len(chemin$) + 1)
GoSub printPDF
ActiveSheet.PageSetup.PrintArea = Range("i3").Value
A$ = TextBox3.Value
chemin$ = Mid(A$, 1, InStrRev(A$, "\"))
fichier$ = Mid(A$, Len(chemin$) + 1)
GoSub printPDF
Erreur:
On Error Resume Next
ActiveSheet.PageSetup.PrintArea = False
PDF.cClose
Set PDF = Nothing
Application.ActivePrinter = DefaultPrinter
Exit Sub
printPDF:
With PDF
.cOption("UseAutosave") = 1
.cOption("UseAutosaveDirectory") = 1
.cOption("AutosaveDirectory") = chemin$
.cOption("AutosaveFilename") = fichier$
.cOption("AutosaveFormat") = 0
.cClearCache
ActiveSheet.PrintOut copies:=1, ActivePrinter:="PDFCreator"
Do Until .cCountOfPrintjobs > 0
DoEvents
Loop
.cPrinterStop = False
Do Until .cCountOfPrintjobs = 0
DoEvents
Loop
.cDefaultPrinter = DefaultPrinter
.cClearCache
End With
Return
End Sub
Private Sub CommandButton2_Click()
Unload UserForm1
End Sub
Private Sub UserForm_Initialize()
With Me
.TextBox1.Value = ""
.TextBox3.Value = ""
.TextBox1.Value = Range("i1")
.TextBox3.Value = Range("j1")
End With
End Sub