Clever-Excel-Forum

Normale Version: Dokumentname bei PDF-Erstellung über PDF24-Software
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo zusammen,

ich habe ein Problem, dass mit der Erstellung von PDF's zusammenhängt.

Ich habe die Software PDF24 installiert, folglich auch einen Drucker "PDF24 PDF" (von der Software installiert).

Aus der Excel-Anwendung  Kasse+Bank  heraus drucke ich mit Hilfe eines Makros das Tabellenblatt "Bu-Ka" als PDF

...
Sheets("Bu-Ka").Select
Application.CutCopyMode = False
Application.ActivePrinter = "PDF24 PDF auf Ne01:"
ActiveWindow.SelectedSheets.PrintOut copies:=1, ActivePrinter:= _
    "PDF24 PDF auf Ne01:", Collate:=True
...

Mit diesem Code wird über die PDF24-Software eine PDF-Datei erstellt.

Die Einstellungen bei der PDF24-Software unter "PDF-Drucker" sind folgende:

Ordner:   C:\abc
Dateiname:    Taxi  %Y-%m-%d %H-%M-%S ${fileName} 

Die Platzhalter stehen für 
Taxi = mein eigener Name
%Y = Jahr
%m = Monat
%d = Tag
%H = Stunde
%M = Minute
%S = Sekunde
$ {fileName} für Dateiname

Es wird ein PDF mit dem Namen   Taxi 2015-06-09 15-10-03 Kasse+Bank     im Verzeichnis    C:\abc erstellt.

Im Platzhalter  $ {fileName}   wird der Name   Kasse+Bank   eingesetzt.

Mein Problem ist jetzt, dass ich anstelle des Wertes  Kasse+Bank   pro Ausdruck einen variablen Wert aus meiner Zelle Belegnummer ("G2") im Arbeitsblatt "Bu-Ka" ausgeben will, um das Dokument später besser erkennen zu können.

Ich habe alles versucht was ich bei   ActiveWindow.SelectedSheets.printout   an Parametern gefunden habe, aber nichts hat funktioniert.

Wer kann mir da bitte weiterhelfen oder einen Tipp geben?

Vorab schon mal besten Dank.
Hallo Günther,

zuerst einmal eine Frage bzw. ein Hinweis - Du könntest doch auch die integrierte pdf-Ausgabe nutzen?

Ich habe bei mir den pdfcreator im EInsatz. Dieser hat eine entsprechende Schnittstelle, mit dem man ihn steuern kann, im Prinzip:

Code:
Set PDFCreator = Wscript.CreateObject("PDFCreator.clsPDFCreator", "PDFCreator_")
...
With PDFCreator
   .cOption("AutosaveFilename") = Scriptbasename & "_<DateTime>"
   .cSaveOptions
End With
...

Weist Du, ob es so was für pdf24 gibt? Ich habe mal etwas gegoogelt, aber nichts gefunden.

Eine weitere Variante wäre, die pdf-Datei anschließend einfach per VBA-Makro umzubenennen.
Hallo!

@schauan
PDF24 hat keine COM-Schnittstelle. Und der von Dir gezeigte Code funktioniert mit der aktuellen Version des PDF-Creator nicht mehr.

Gruß, René
Hallo René,
Danke erstmal für den Hinweis. Ich werde mir das mal mit der aktuellen Version anschauen. Wir setzen das Prinzip in der Firma ein, allerdings per vbs und nicht im Office. Da hinken wir mit dem pdfcreator einige Versionen hinterher.
Ich kann nur empfehlen bis auf Weiteres auf die Version 2 zu verzichten. Zumindest bis auch für VB/VBA Beispielcode verfügbar ist (den gibt es derzeit nur für JavaScript). Ich warte auch schon länger darauf, damit ich mein Tool an die aktuelle Version anpassen kann.
Hallo André,

danke für die Hinweise und Tipps.

Das mit der integrierten pdf-Ausgabe werde ich mal in einer ruhigen Stunde ausprobieren.

Momentan habe ich Deine zweite Variante (pdf-Datei per Makro umbenennen)  eingebaut und es funktioniert genauso wie ich es brauche.