Zahlungsziel berechnen in Word

Ich möchte, dass Word beim Schreiben von Rechnungen automatisch das Zahlungsziel einfügt. Das gewünschte Datum berechnet sich zumeist aus dem aktuellen Datum und einer Frist von 30 Tagen. In Einzelfällen wäre es wünschenswert, wenn ich das Bezugsdatum sowie die Anzahl der aufzurechnenden Tage manuell ändern könnte.

vorlesen Druckansicht
Lesezeit: 2 Min.
Von
  • Björn Hansen

Ich möchte, dass Word beim Schreiben von Rechnungen automatisch das Zahlungsziel einfügt. Das gewünschte Datum berechnet sich zumeist aus dem aktuellen Datum und einer Frist von 30 Tagen. In Einzelfällen wäre es wünschenswert, wenn ich das Bezugsdatum sowie die Anzahl der aufzurechnenden Tage manuell ändern könnte.

Zur Lösung des Problems sollten Sie das folgende VBA-Makro in ein Modul Ihrer globalen Dokumentvorlage Normal.dot einfügen:

Sub Zieldatum()
Dim vntDatum As Variant
Dim vntTage As Variant

vntDatum = InputBox _
("Bezugsdatum:", , Date)
If vntDatum > "" Then
vntTage = InputBox _
("Zahlungsziel in Tagen:", , 30)
If vntTage > "" Then
Selection.TypeText _
Format(CDate(vntDatum) + _
CInt(vntTage), "short date")
End If
End If
End Sub

Das Makro fragt zunächst das gewünschte Bezugsdatum ab, wobei im Dialogfeld bereits das aktuelle Datum als Vorgabe erscheint. Danach erfolgt die Abfrage des Zahlungsziels; hier enthält das Textfeld einen Vorgabewert von 30 Tagen. Im Normalfall beschränken sich die notwendigen Eingaben also auf ein zweimaliges Drücken der Eingabetaste; ansonsten überschreiben Sie die Vorgaben einfach mit den gewünschten Werten. Die Kalkulation des Zieldatums erfolgt durch eine einfache Addition des Zahlungsziels auf das angegebene Datum. Dabei berücksichtigt die VBA-interne Datumsarithmetik automatisch die unterschiedlichen Monatslängen und Schaltjahre. Die Selection.TypeText-Anweisung fügt das Zieldatum an der aktuellen Position der Schreibmarke in das Dokument ein. Um das Makro bei Bedarf möglichst schnell starten zu können, weisen Sie ihm über Extras - Anpassen - Tastatur ein Tastenkürzel zu. (Ralf Nebelo/se) (ha)