Microsoft Excel

Herbers Excel/VBA-Archiv

Per VBA drucken - Adobe PDF on ne0x

Betrifft: Per VBA drucken - Adobe PDF on ne0x von: Boris
Geschrieben am: 11.07.2008 15:50:05

Hallo,

untenstehender (verkürzter) Code druckt ein Arbeitsblatt als pdf. Dabei muss ich auf meinem Rechner ActivePrinter auf "Adobe PDF on Ne04:" setzen. Andere Rechner hier in der Firma haben andere Ports. Die Datei soll jedoch von verschiedenen Rechnern aus abrufbar sein. Wie ermittelt man den richtigen Adobe PDF Printer per VBA?

Sub PrintAll()
    Dim wsPS As Worksheet
    Dim FileName As String, Dim strPfad As String
    
    Dim distiller As ACRODISTXLib.PdfDistiller
    Set distiller = New ACRODISTXLib.PdfDistiller
    
    Application.ActivePrinter = "Adobe PDF on Ne04:" 'HIER MUSS DER PORT AUTOMATISCH REIN
    
    strPfad = ThisWorkbook.Path & "\..\xx\"

    Set wsPS = ThisWorkbook.Worksheets("xy")
    
 ..........   
 
        FileName = wsPS.Range("B1").Value

        wsPS.PrintOut , printtofile:=True, Collate:=True, PrToFileName:=(strPfad & FileName & ". _
ps")
        distiller.FileToPDF strPfad & FileName & ".ps", strPfad & FileName & ".pdf ", ""

        Kill strPfad & FileName & ".ps"

...........

    Kill strPfad & "*.log" 'Löscht erstellte .log Dateien
    Set distiller = Nothing

End Sub



Bin um jede Hilfe dankbar, habe bisher nichts zu dem Thema gefunden...

Gruß, Boris

  

Betrifft: AW: Per VBA drucken - Adobe PDF on ne0x von: Peter W.
Geschrieben am: 11.07.2008 18:18:28

Servus,

siehe dazu ein zwar schon älterer aber immer noch genialer Beitrag von Ramses.
Für dich wichtig die Funktionen von Nepumuk.

https://www.herber.de/forum/archiv/816to820/t818904.htm

MfG

Peter


  

Betrifft: AW: Per VBA drucken - Adobe PDF on ne0x von: bst
Geschrieben am: 11.07.2008 23:15:34

Abend,

Du kannst auch sowas versuchen. Wechsle nicht den Drucker sondern gib ihn beim Ausdruck explizit an. Dort kannst Du nämlich das " auf ..." einfach weglassen.

Du brauchst zwar:

ActivePrinter = "PDFCreator auf Ne01:"
ActiveSheet.PrintOut

Aber hier reicht auch sowas:

ActiveSheet.PrintOut ActivePrinter:="PDFCreator"

cu, Bernd


  

Betrifft: AW: Per VBA drucken - Adobe PDF on ne0x von: Boris
Geschrieben am: 14.07.2008 10:16:42

Hallo,

vielen Dank, es funktioniert:

wsPS.PrintOut ActivePrinter:="Adobe PDF" , printtofile:=True, Collate:=True, PrToFileName:=usw...

Problem gelöst, allerdings verstehe ich nicht wieso:)

Gruß,
Boris


  

Betrifft: AW: Per VBA drucken - Adobe PDF on ne0x von: bst
Geschrieben am: 14.07.2008 11:07:47

Morgen,

warum dem so ist musst Du wohl die Entwickler bei M$ fragen.

cu, Bernd


 

Beiträge aus den Excel-Beispielen zum Thema "Per VBA drucken - Adobe PDF on ne0x"