Direkt zum Hauptbereich

Mehr Zeit für Teamwork durch Automatisierung - Über freie PDF-Tools

Es gibt bestimmte Arbeiten, die immer gleich ablaufen. Zum Beispiel habe ich es oft mit vielen Textdokumenten zu tun, die ich von verschiedenen Kollegen bekomme. Meine Kunden möchten aber eine einzige PDF-Datei, in der sie sich schnell zu Recht finden. Dazu muss ich jede Word-Datei öffnen und als PDF-Datei abspeichern. Hinterher muss ich alle PDF-Dateien in der richtigen Reihenfolge aneinander hängen. Das lässt sich automatisieren. So gewinne ich Zeit für andere Dinge und meine Kollegen haben etwas mehr Zeit, um mir Informationen zu liefern. In diesem Artikel erkläre ich, mit welchen Tools ich aus vielen Word-Dokumenten eine PDF-Datei mache.

In unserer Firma koordiniere ich die Kundenverträge, d. h. zu Beginn erstelle ich viele Word-Dokumente und verteile sie an Kollegen. Diese tragen die Details ein und schicken mir die Dateien zurück.

Wenn man einen Vertrag mit 60 Dokumenten hat und jeden Tag Änderungen kommen, fängt man an zu überlegen, ob sich das Erstellen von PDF-Dateien nicht automatisieren lässt. Mit Word und ein paar freien Tools aus dem Netz geht das ganz wunderbar. Vielen Dank an Stephan List, der in seinem Toolblog immer wieder neue Software und Dokumente vorstellt.

Das sind die wichtigsten Schritte:
  • Schritt 1: Ich rufe Microsoft Word mit Hilfe eines VBA-Makros auf und speichere jede Datei als PDF-Datei ab (Beispielmakro siehe unten)
  • Schritt 2: Ich nutze PDFTK, um alle PDF-Dateien aneinanderzuhängen.
  • Schritt 3: Mit jpfbookmarks lege ich Lesezeichen fest.
  • Schritt 4: BeCyPDFMetaEdit ist praktisch, um Titel, Autor und Datum der PDF-Datei festzulegen.
Diese Schritte kann man in eine Batchdatei kopieren und die sie nacheinander ablaufen lassen /1/.

Unten habe ich ein Beispiel angefügt, um das Prinzip zu erläutern. In dem Beispiel gibt es einen Projektvertrag mit 2 Anlagen. Wenn das Skript durchgelaufen ist, gibt es eine neue PDF-Datei mit Lesezeichen und richtigen Metadaten.

Was hat das mit Teamwork zu tun?
  • Stupide Arbeiten, die man automatisieren kann, binden uns unnötig. Sie halten uns davon ab, Zeit mit unseren Kunden oder Kollegen zu verbringen.
  • Meine Kollegen sind von meinen Arbeitsergebnissen abhängig. Meine Prozesse dürfen nicht länger dauern als nötig. Ich muss prüfen, was für mein Team die kritischen Schritte sind, ohne die dessen Arbeit stockt.
  • Jeder im Team sollte sein Handwerkzeug beherrschen. Bei Routinevorgängen sollte jeder einzelne sich überlegen, was er optimieren kann, damit das Team besser wird. Das gilt besonders für Vorgänge, die häufig vorkommen und zeitintensiv sind. Automate the pain away. 
Beobachten Sie Ihr Team. Welche Schritte sind besonders wichtig? Kann man diese optimieren? Investieren Sie jede Woche eine Stunde in Ihr eigenes Handwerkszeug. Irgendetwas kann man immer verbessern.

Anmerkungen und Verweise:
Anhang


Um die Lesbarkeit des Makros und der Batchdatei zu erhöhen, habe ich die Dienste http://www.zilpher.com/colourcode.php und http://tohtml.com/Batch/ benutzt. Damit wird der Text bunter :-)

VBA-Makro für Word:

Sub UpdateAndPDF()
'
' UpdateAndPDF Makro
'
' Kopfzeile aktualisieren

    If ActiveWindow.View.SplitSpecial <> wdPaneNone Then
        ActiveWindow.Panes(2).Close
    End If
    If ActiveWindow.ActivePane.View.Type = wdNormalView Or ActiveWindow. _
        ActivePane.View.Type = wdOutlineView Then
        ActiveWindow.ActivePane.View.Type = wdPrintView
    End If
    ActiveWindow.ActivePane.View.SeekView = wdSeekCurrentPageHeader
    Selection.WholeStory
    Selection.Fields.Update
    ActiveWindow.ActivePane.View.SeekView = wdSeekMainDocument
  
' Rest aktualisieren
  
    Selection.WholeStory
    Selection.Fields.Update
   
' Alle Äderungen annehmen

    WordBasic.AcceptAllChangesInDoc
  
' PDF-Dateiname festlegen

    If (Right(ActiveDocument.FullName, 5) = ".docx") Then
        PDFFilename = (Replace(ActiveDocument.FullName, ".docx", ".pdf"))
    Else
        PDFFilename = (Replace(ActiveDocument.FullName, ".doc", ".pdf"))
    End If

' PDF erstellen

    ActiveDocument.ExportAsFixedFormat OutputFileName:= _
        PDFFilename _
        , ExportFormat:=wdExportFormatPDF, OpenAfterExport:=False, OptimizeFor:= _
        wdExportOptimizeForPrint, Range:=wdExportAllDocument, From:=1, To:=1, _
        Item:=wdExportDocumentContent, IncludeDocProps:=True, KeepIRM:=True, _
        CreateBookmarks:=wdExportCreateHeadingBookmarks, DocStructureTags:=True, _
        BitmapMissingFonts:=False, UseISO19005_1:=False
      
' Dokument speichern und Word beenden

    ActiveDocument.Save
    Application.Quit

End Sub

Batchdatei, die aus den drei Word-Dateien projektvertrag.docx, pv_Anlage1_Projektbeschreibung.docx und pv_Anlage2_Ansprechpartner.docx die PDF-Datei Projektvertrag_Version_1.pdf erzeugt:
@echo off
REM Word aufrufen
"c:\Program Files\Microsoft Office\Office14\WINWORD.EXE" projektvertrag.docx /mUpdateAndPDF
"c:\Program Files\Microsoft Office\Office14\WINWORD.EXE" pv_Anlage1_Projektbeschreibung.docx /mUpdateAndPDF
"c:\Program Files\Microsoft Office\Office14\WINWORD.EXE" pv_Anlage2_Ansprechpartner.docx /mUpdateAndPDF

REM PDFTK starten
PDFTK projektvertrag.pdf pv_Anlage1_Projektbeschreibung.pdf pv_Anlage2_Ansprechpartner.pdf cat output projektvertrag_t1.pdf

REM Lesezeichen exportieren
jpdfbookmarks_cli projektvertrag.pdf -d > bookmarks.txt
jpdfbookmarks_cli pv_Anlage1_Projektbeschreibung.pdf -d >> bookmarks.txt
jpdfbookmarks_cli pv_Anlage2_Ansprechpartner.pdf -d >> bookmarks.txt
ECHO Bitte Lesezeichen in Datei bookmarks.txt korrigieren
PAUSE

REM Lesezeichen in Gesamtdatei eintragen
jpdfbookmarks_cli projektvertrag_t1.pdf --apply bookmarks.txt --out projektvertrag_t2.pdf

REM Lesezeichen beim Oeffnen der PDF-Datei anzeigen
jpdfbookmarks_cli projektvertrag_t2.pdf --show-on-open yes --out projektvertrag_t3.pdf

REM Titel und Autor eintragen
BeCyPDFMetaEdit projektvertrag_t3.pdf -T "Projektvertrag"
BeCyPDFMetaEdit projektvertrag_t3.pdf -A "Jan Fischbach"

REM Aufräumen
REN projektvertrag_t3.pdf Projektvertrag_Version_1.pdf
DEL projektvertrag_t2.pdf
DEL projektvertrag_t1.pdf


Kommentare

Beliebte Posts aus diesem Blog

Wie lassen sich Ergebnisse definieren? - Drei Beispiele (WBS, CBP und BDN)

Ich habe schon darüber geschrieben, warum das Definieren von Ergebnissen so wichtig ist. Es lenkt die Aufmerksamkeit des Projektteams auf die eigentlichen Ziele. Aber was sind eigentlich Projektergebnisse? In diesem Beitrag stelle ich drei Methoden vor, um leichter an Ergebnisse zu kommen.

Microsoft Teams: Die neuen Besprechungsnotizen - Loop-Komponenten

  Haben Sie in letzter Zeit in einer Teams-Besprechung die Notizen geöffnet? Dort sind inzwischen die Loop-Komponenten hinterlegt. Die sind zwar etwas nützlicher als das, was zuvor zur Verfügung stand. Trotzdem ist noch Luft nach oben. Und es gibt sogar einige ernstzunehmende Stolperfallen. Hier ein erster, kritischer Blick auf das was Sie damit tun können. Und auch darauf, was Sie besser sein lassen.

Erfahrung mit Vibe-Coding - und warum das keine Teamprobleme löst

Die KI-Werkzeuge zum Erstellen von Werkzeugen für die tägliche Arbeit werden immer besser. Die selbstgestrickten Tools erleichtern die eigene Arbeit. Aber für den Einsatz im Team fehlt noch etwas.

Microsoft Copilot - Notebook, Pages, Agents und mehr

Es tut sich sehr viel an der Copilot Front. Gefühlt entwickelt Microsoft mit aller Kraft die KI-Anwendung weiter. Mit dem letzten Update hat sich die Microsoft-Startseite stark verändert. Hier zeige ich, was sich hinter all den Begrifflichkeiten verbirgt und was davon alltagstauglich ist.

Wenn Leisten Leistung kostet

Immer. Immer "on". Immer mehr. Immer schneller. Und natürlich: Immer besser. Das ist die Welt, in der wir heute leben. Eine Welt der Dauerleistung. Und die hat ihren Preis: Wir werden schwächer. Sofern wir nicht die Grundlagen guten (Selbst-)Managements beherzigen und Pausen machen. Also zur richten Zeit das wirklich Wichtige tun.

Schätzungen sind schätzungsweise überschätzte Schätze

"Wer viel misst, misst viel Mist." Zumindest ist diese Gefahr gegeben. Entweder misst man z. B. Mist, weil man zu früh zu KPIs zur Messung von Ergebnissen greift, oder aber man greift zu den falschen KPIs, die gar nicht das messen, was man wissen möchte. Einst war agiles Arbeiten der alternative Ansatz, aber inzwischen gibt es auch für einige Details dessen, was in Konzernen als "agil" praktiziert wird, einleuchtende alternative Ideen, die bis heute noch nicht so richtig auf die große Bühne vorgedrungen zu sein scheinen. 

A shared file storage is not a library

In over 90% of cases where we advise organizations on filing systems, we find that they are organized by topic. This system quickly leads to chaos because outdated documents are not disposed of quickly enough. So why does everyone think to structure their filing system by topic? I believe we have the wrong idea.

From False Starts to Precision Landing: The Evolution of Requirements Management

Requirements management originated in U.S. rocket programs between 1945 and 1970. A small management trick contributed to the success of the Apollo program.

Wie läuft ein Projekt zum Entwickeln von Szenarien ab?

Seit 2016 beschäftigen Edgar und ich uns intensiv mit der Szenariotechnik. Szenarien sind ein wirkungsvolles Werkzeug, um Projekte oder ganze Geschäftsmodelle auf ihre Zukunftstauglichkeit zu testen.

Wenn es mal gerade etwas schwierig bei Kund:innen wird… Zwei Fragen, die uns helfen, unsere Strategie mit unseren Kund:innen abzusprechen.

Seit 2024 organisieren Bob Galen und ich eine Masterclass für agile Coaches. Wir möchten die Ausbildung von agilen Coaches verbessern und ihnen Techniken mitgeben, mit denen sie bei ihren Kund:innen etwas einfacher haben. Bisher haben wir in vier Durchgängen mit jeweils 14 Modulen ungefähr 70 Extraordinarily Badass Agile Coaches ausgebildet (/1/). In diesem Blogpost möchte ich ein paar Erfahrungen und simple Techniken aus der Masterclass teilen, wie wir unsere Strategie besser abstimmen können. Sie beschränken sich nicht auf agiles Coaching – das ist nur das Setting.