remplacer PDFcreator par image writer dans cette macro ?

kinel

XLDnaute Occasionnel
Bonjour le forum

j'utilise cette macro pour faire une copie PDF d'une feuille de mon classeur
mais j'aimerai la transformer pour créer plutôt un fichier .XPS par "image writer" qui se trouve sur toutes les machines ce qui n'est pas toujours le cas de pdfcreator.

merci de votre aide

Kinel

Dim pdfjob As PDFCreator.clsPDFCreator
Dim sPDFName As String
Dim sPDFPath As String
'/// Changer le nom du fichier de sortie sur la lign cidessous: ///
sPDFName = Format(Now, "dd_mm_yyyy_hh_mm_") & "h" & "FLR1.pdf"
sPDFPath = "C:\sauv"
If IsEmpty(ActiveSheet.UsedRange) Then Exit Sub
Set pdfjob = New 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 ' 0 = PDF
.cClearCache
End With
'Imprime le document en PDF
ActiveSheet.PrintOut copies:=1, ActivePrinter:="PDFCreator"
'Attend que le document soit entré dans la file d'impression
Do Until pdfjob.cCountOfPrintjobs = 1
DoEvents
Loop
pdfjob.cPrinterStop = False
'Attend que l'impression du document soit terminée
Do Until pdfjob.cCountOfPrintjobs = 0
DoEvents
Loop
pdfjob.cClose
Set pdfjob = Nothing
 
Dernière édition:

Staple1600

XLDnaute Barbatruc
Re : remplacer PDFcreator par image writer dans cette macro ?

Bonjour à tous

kinel:
Fais d'abord le test manuellement (pour savoir sur quel NeXX: tu seras)
La macro ci-dessous fonctionne sur mon PC
(évidemment il te faudra changer le path si besoin et le nom du fichier)
Code:
Sub TestXPS()
ActiveWindow.SelectedSheets.PrintOut Copies:=1, _
ActivePrinter:="Microsoft XPS Document Writer sur Ne01:", _
PrToFileName:="C:\temp\test1.xps"
End Sub