Das Feld bzw. genauer die Feldfunktion "{ FILENAME \p }", die den Dateinamen mit Pfad in ein Word-Dokument schon seid Generationen eingefügt werden, kann beim Drucken aktualisiert werden. D. h. es wird bei jedem Druck des Dokuments, zuvor von Word darauf geachtet, dass der aktuelle Pfad mit dem Dateinamen auch an der Position des Feldes eingetragen wird (siehe hierzu auch "Felder und Feldfunktionen").

Das klappt so mit dem oben beschriebenen Makro nicht.

Word-Felder und -Feldfunktionen sind auch in normalen "Dokumenten" (also in "*.docx"- oder "*.dotx"-Dateien) aktiv. Wenn Sie den Anspruch haben, dass der Pfad bei jedem Drucken aktuell gehalten werden soll, dann muss das Dokument selbst aktiv werden.

Das bedeutet, dass Sie ein Makro benötigen, das beim Drucken aktiv wird. Das Dokument ist dann als "Dokument mit Makros" im Format "*.docm" oder als Dokumentvorlage im Format "*.dotm" zu speichern.

Die Lösung könnte über eine Textmarke lauten:

Setzen Sie eine Textmarke an die Stelle Ihres Dokumentes, an der der Pfad zukünftig stehen soll. Benennen Sie die Textmarke eindeutig (so dass Sie später auch drauf kommen, wofür diese Textmarke gesetzt wurde).

word 2010 pfad per makro vor dem druck aktualisieren 01

Dies klappt über das Register "Einfügen" in der Gruppe "Hyperlinks". Dort können Sie den Befehl "Textmarke" nutzen ...

word 2010 pfad per makro vor dem druck aktualisieren 02

... um an Ort und Stelle z. B. die Textmarke "dokpfad" zu setzen.

Dann wird ein Makro nötig, dass das Ereignis "DocumentBeforePrinting" abfängt. Hierzu müssen wir nun direkt in den "Visual Basic for Applications"-Editor. Betätigen Sie hierzu die Tastankombination [ALT] + [F11].

Alternativ können Sie sich die Registerkarte "Entwicklertools" einblenden (siehe auch Beitrag "Entwicklertools unter Word 2010 einblenden") ...

word 2010 pfad per makro vor dem druck aktualisieren 03

... und dort auf "Visual Basic" klicken. In beiden Fällen kommen Sie in den Editor.

word 2010 pfad per makro vor dem druck aktualisieren 05

Dort drin ist dann der Makrocode zu platzieren, der an der Position der Textmarke jedes Mal den aktuellen Pfad ausgibt.  Achten Sie darauf, dass Sie den Makrocode im Projekt selbst (1) unter "Microsoft Word Objekte" > "ThisDocument" platzieren!

{xtypo_code}Private WithEvents App As Word.Application
 
Private Sub Document_Open()
  Set App = Word.Application
End Sub
 
Public Sub App_DocumentBeforePrint(ByVal Doc As Document, Cancel As Boolean)
  Dim TMRange As Range
  With ActiveDocument
    If .Bookmarks.Exists("dokpfad") Then
      Set TMRange = .Bookmarks("dokpfad").Range
      TMRange = .Path
      .Bookmarks.Add "dokpfad", TMRange
    End If
  End With
End Sub{/xtypo_code}

Schließen Sie den "VBA"-Editor und speichern Sie das Dokument ... ACHTUNG ... als "Dokument mi Makros" (1) !!!

word 2010 pfad per makro vor dem druck aktualisieren 06

Die alten Dateiformate (*.doc und *.dot) will ich hier nicht mehr erwähnen.

Das war es dann. Schließen Sie das Word-Dokument und öffnen Sie es wieder. Das Makro wird wahrscheinlich erst nach dem "Neu laden" ...

word 2010 pfad per makro vor dem druck aktualisieren 07

... und "Aktivieren der Makros" laufen. Klicken Sie nach dem laden kurz auf "Inhalte aktivieren" (1).

Speichern Sie das Dokument sonst und drucken Sie es aus.

word 2010 pfad per makro vor dem druck aktualisieren 08

Der aktuelle Pfad wird an der Position der Textmarke eingefügt.

Jeder einzelne der Schritte oben kann mit ein wenig Zeit über die Suchmaschinen gefunden und umgesetzt werden. Testen Sie weitere Varianten oder Möglichkeiten. {xtypo_info}Beachten Sie auch, dass Dokument mit Makros (*.docm oder *.dotm) bei den meisten Firmen gegen den Spamfilter "knallen". D. h. Sie können solche Dokumente (mit Makros) nicht an jeden Empfänger als E-Mail senden. Mit Makro kann man Gutes machen (so wie man hier sieht), man kann mit Makros aber auch Schaden anrichten (die Suche nach den Stichworten "Makro Virus" reicht als erster Hinweis wohl aus).

"Drucken" Sie das Dokument als PDF-Datei und senden Sie diese PDF-Datei an die Empfänger.{/xtypo_info}

ENDE DES WORKSHOPS

Weitere Informationen im Web


Neueste Beiträge

wvm7x_