[COLOR=#0000ff]Option[/COLOR] [COLOR=#0000ff]Explicit[/COLOR]
[COLOR=#0000ff]Dim[/COLOR] sNomPortReseau [COLOR=#0000ff]As[/COLOR] [COLOR=#0000ff]String[/COLOR]
[COLOR=#0000ff]Sub[/COLOR] Tst_Adobe_PDF_03()
[COLOR=#0000ff]Dim[/COLOR] sNomFichierPS [COLOR=#0000ff]As[/COLOR] [COLOR=#0000ff]String[/COLOR]
[COLOR=#0000ff]Dim[/COLOR] sNomFichierPDF [COLOR=#0000ff]As[/COLOR] [COLOR=#0000ff]String[/COLOR]
[COLOR=#0000ff]Dim[/COLOR] sNomFichierLOG [COLOR=#0000ff]As[/COLOR] [COLOR=#0000ff]String[/COLOR]
[B][SIZE=3][COLOR=#0000ff]Dim[/COLOR] PDFDist [COLOR=#0000ff]As[/COLOR] PdfDistiller
[/SIZE][/B][COLOR=#0000ff]Dim[/COLOR] PrinterDefault [COLOR=#0000ff]As[/COLOR] [COLOR=#0000ff]String[/COLOR]
[COLOR=#808080]' Sur un PC "Personnel" : a priori choix libre du Nom[/COLOR]
[COLOR=#808080]' et de l'emplacement du fichier de sortie, on est logué en [/COLOR]
[COLOR=#808080]' Administrateur sur son PC[/COLOR]
[COLOR=#808080]'[/COLOR]
[COLOR=#808080]' Sur un PC "Entreprise" :[/COLOR]
[COLOR=#808080]' Il faut être logué en Administrateur ou en[/COLOR]
[COLOR=#808080]' Avoir les droits pour utiliser Distiller[/COLOR]
[COLOR=#808080]' Les chemins PS PDF LOG devront être de la forme :[/COLOR]
[COLOR=#808080]' "C:\Documents and Settings\UserName\.....\....."[/COLOR]
[COLOR=#808080]' Si l'on a plusieurs imprimantes il faut :[/COLOR]
[COLOR=#808080]' Sélectionner l'imprimante virtuelle Adobe PDF tout en conservant[/COLOR]
[COLOR=#808080]' trace de l'imprimante utilisée par défaut[/COLOR]
[COLOR=#808080]' Le N° de port réseau NeXY varie suivant le PC sur lequel la macro tourne[/COLOR]
PrinterDefault = Application.ActivePrinter
[COLOR=#0000ff]If[/COLOR] Imprimante_AdobePDF [COLOR=#0000ff]Then[/COLOR]
Application.ActivePrinter = sNomPortReseau
[COLOR=#0000ff]Else[/COLOR]
MsgBox [COLOR=#ff0000]"Pas d'imprimante Adobe PDF sur NeXY "[/COLOR], vbOKOnly+vbCritical, [COLOR=#ff0000]"Achtung"[/COLOR]
[COLOR=#0000ff]Exit[/COLOR] [COLOR=#0000ff]Sub[/COLOR]
[COLOR=#0000ff]End[/COLOR] [COLOR=#0000ff]If[/COLOR]
[COLOR=#808080]' Ici le cas d'un PC "Personnel"[/COLOR]
sNomFichierPS = ThisWorkbook.Path & [COLOR=#ff0000]"\"[/COLOR] & [COLOR=#ff0000]"Essai_AdobbePDF.ps"[/COLOR]
sNomFichierPDF = ThisWorkbook.Path & [COLOR=#ff0000]"\"[/COLOR] & [COLOR=#ff0000]"Essai_AdobbePDF.pdf"[/COLOR]
sNomFichierLOG = ThisWorkbook.Path & [COLOR=#ff0000]"\"[/COLOR] & [COLOR=#ff0000]"Essai_AdobbePDF.log"[/COLOR]
[COLOR=#808080]' Impression d'une zone nommée[/COLOR]
ActiveSheet.Range([COLOR=#ff0000]"Zone"[/COLOR]).PrintOut Copies:=[COLOR=#cc66cc]1[/COLOR], Preview:=[COLOR=#0000ff]False[/COLOR], _
ActivePrinter:=sNomPortReseau , PrintToFile:=[COLOR=#0000ff]True[/COLOR], _
Collate:=[COLOR=#0000ff]True[/COLOR], PrToFilename:=sNomFichierPS
[COLOR=#0000ff]Set[/COLOR] PDFDist = [COLOR=#0000ff]New[/COLOR] PdfDistiller
PDFDist.FileToPDF sNomFichierPS, sNomFichierPDF, [COLOR=#ff0000]""[/COLOR]
[COLOR=#0000ff]Set[/COLOR] PDFDist = [COLOR=#0000ff]Nothing[/COLOR]
Kill sNomFichierPS
Kill sNomFichierLOG
Application.ActivePrinter = PrinterDefault
[COLOR=#0000ff]End[/COLOR] [COLOR=#0000ff]Sub[/COLOR]
[COLOR=#0000ff]Private[/COLOR] [COLOR=#0000ff]Function[/COLOR] Imprimante_AdobePDF() [COLOR=#0000ff]As[/COLOR] [COLOR=#0000ff]Boolean[/COLOR]
[COLOR=#0000ff]Dim[/COLOR] i [COLOR=#0000ff]As[/COLOR] [COLOR=#0000ff]Long[/COLOR]
[COLOR=#808080]' 11 imprimantes réseau[/COLOR]
Imprimante_AdobePDF = [COLOR=#0000ff]False[/COLOR]
[COLOR=#0000ff]For[/COLOR] i = [COLOR=#cc66cc]0[/COLOR] [COLOR=#0000ff]To[/COLOR] [COLOR=#cc66cc]10[/COLOR]
[COLOR=#0000ff]If[/COLOR] i < [COLOR=#cc66cc]10[/COLOR] [COLOR=#0000ff]Then[/COLOR]
sNomPortReseau = [COLOR=#ff0000]"Adobe PDF sur Ne0"[/COLOR] & i & [COLOR=#ff0000]":"[/COLOR]
[COLOR=#0000ff]Else[/COLOR]
sNomPortReseau = [COLOR=#ff0000]"Adobe PDF sur Ne"[/COLOR] & i & [COLOR=#ff0000]":"[/COLOR]
[COLOR=#0000ff]End[/COLOR] [COLOR=#0000ff]If[/COLOR]
[COLOR=#0000ff]On[/COLOR] [COLOR=#0000ff]Error[/COLOR] [COLOR=#0000ff]Resume[/COLOR] [COLOR=#0000ff]Next[/COLOR]
Application.ActivePrinter = sNomPortReseau
[COLOR=#0000ff]If[/COLOR] ActivePrinter = sNomPortReseau [COLOR=#0000ff]Then[/COLOR]
Imprimante_AdobePDF = [COLOR=#0000ff]True[/COLOR]
[COLOR=#0000ff]Exit[/COLOR] [COLOR=#0000ff]For[/COLOR]
[COLOR=#0000ff]End[/COLOR] [COLOR=#0000ff]If[/COLOR]
[COLOR=#0000ff]Next[/COLOR] i
[COLOR=#0000ff]End[/COLOR] [COLOR=#0000ff]Function[/COLOR]