DecaTec

Programmieren, Fotografie, Home-Server und einiges mehr

Word-Dokument mittels VBA als PDF speichern (Integration in den Build-Prozess)

Eine Anwender-Dokumentation für ein Programm sollte im Idealfall nicht erst nach dem Fertigstellen des Programms erstellt werden, sondern mit dem Programm und seinen Features mitwachsen. Somit ist die Dokumentation (hier eher im Sinne von „Handbuch“ zu verstehen) eng mit der dazugehörigen Software verbunden. Daher ist es auch naheliegend, die Generierung der Anwender-Dokumentation in den Build-Prozess des Projekts mit einzubinden.

Im Folgenden wird davon ausgegangen, dass zur Erstellung der Anwender-Dokumentation Microsoft Word zum Einsatz kommt. Microsoft Office untersützt das Speichern von Dokumenten im PDF-Format ab Version 2010 (bei Office 2007 kann dieses Feature allerdings per Add-In nachgerüstet werden).

Der Artikel soll nun zeigen, wie man Word mittels VBA (Visual Basic for Applications) instrumentalisieren kann, damit die Erzeugung von PDF-Dokumenten einfach in den Build-Prozess mit Visual Studio integriert werden kann.

VBA-Skript zur Erzeugung von PDF-Dokumenten

Das folgende VBA-Skript sorgt dafür, dass Word-Dokumente (doc oder docx) als PDF abgespeichert werden:

Integration in den Visual Studio Build-Prozess

Dieses Skript kann nun mühelos in den Build-Prozess von Visual Studio integriert werden.
Dazu fügt man es erst einmal Add > Exisiting Item… dem Projekt hinzu. Die Dokumentation ist der Einfachkeit halber ebenfalls Teil des Visual Studio-Projekts.

Als nächstes öffnet man die Projekt-Eigenschaften (des Projekts, in dem das Word-Dokument nebst VBA-Skript enthalten sind) und wechselt in die Tabe Build Events. Hier wird der Aufruf des VBA-Skripts folgendermaßen als Post-build event eingetragen:

 

Post-build event

Post-build event

Sowohl das Skript (doc2pdf.vbs), als auch die Dokumentation (MyDocumentation.docx) liegen hierbei im Root-Verzeichnis des Visual Studio-Projekts.

Nun erhält man beim Bauen des Projekts im Output-Verzeichnis die Dokumentation als PDF-Datei.

Einschränkungen

Bei der hier gezeigten Vorgehensweise gibt es lediglich eine Einschränkung: Das Dokument, welches in eine PDF-Datei umgewandelt werden soll, darf nicht gleichzeitig in Word geöffnet sein. Ansonsten schlägt die Umwandlung fehl und eine „verwaiste“ Instanz von Word (d.h. ohne Benutzeroberfläche) bleibt zurück. Diese muss in diesem Fall dann mittels Taskmanager beendet werden.

, , ,

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.