Enregistrer en PDF
m
Bjr,
Une fois de plus je fais appel aux forum car je suis coincé dans mon programme..
Je souhaite enregistrer en PDF la feuille active de mon programme => ça fonctionne (voir code ci-dessous=
Sub CreatePDF()
Dim pdfjob As PDFCreator.clsPDFCreator
Dim sPDFPath As String, sPDFName As String
Dim CurFile As String
Dim DefaultPrinter
' Chemin de destination
sPDFPath = ThisWorkbook.Path & Application.PathSeparator
' Fichier de destination
sPDFName = "WP03 - ENGINEERING - POC_Verification.pdf"
' Avec cette instance
Set pdfjob = CreateObject("PDFCreator.clsPDFCreator")
With pdfjob
If .cStart("/NoProcessingAtStartup") = False Then
MsgBox "Can't initialize PDFCreator.", vbCritical + vbOKOnly, "PrtPDFCreator"
Exit Sub
End If
.cOption("UseAutosave") = 1
.cOption("UseAutosaveDirectory") = 1
.cOption("AutosaveDirectory") = sPDFPath
.cOption("AutosaveFilename") = sPDFName
.cOption("AutosaveFormat") = 0
.cClearCache
End With
'Lancer l'impression sur l'imprimante PDFCreator
ActiveWindow.SelectedSheets.PrintOut Copies:=1, ActivePrinter:="PDFCreator", IgnorePrintAreas:=False
'Attendre que l'envoi soit effectuer à l'imprimante
Do Until pdfjob.cCountOfPrintjobs = 1
DoEvents
Loop
With pdfjob
pdfjob.cPrinterStop = False
' Attendre que l'impression se termine
Do Until pdfjob.cCountOfPrintjobs = 0
DoEvents
Loop
pdfjob.cClearCache
pdfjob.cClose
End With
Set pdfjob = Nothing
'Supprimer le fichier PDF temporaire
'Kill sPDFPath & sPDFName
End SubMon problème c'est que lorsque j'utilise plusieurs fois le programme, ce dernier n'enregistre plus le fichier PDF car lors de la 1ere utilisation, le fichier souhaité "WP03 - ENGINEERING - POC_Verification.pdf" a déjà été créé dans le répertoire.
Je souhaite a chaque utilisation du programme, supprimer le PDF précédent pour pouvoir enregistrer le nouveau,
Avez-vous une idée ?
Merci !
C
Bonjour,
Mets ton kill enfin l'instruction
Kill sPDFPath & sPDFNameen début de macro après fichier de destination ça devrait fonctionner (:
Cdlt
m
Parfait ! Merci pour cette réponse !