Fortlaufende Rechnungsnummern in Word-Dokumenten

In der Praxis kommt es oft vor, dass IGeL-Rechnungen mit identischen Beträgen erstellt werden müssen. Da bietet es sich an, eine Word-Vorlage zu erstellen, die nur noch Name und Anschrift automatisiert übernimmt. Allerdings müssen Rechnungen eine fortlaufende Nummer enthalten.
Zu diesem Zweck erhält die Vorlage ein »AutoNew«-Makro, das beim Erstellen eines neuen Dokuments ausgelöst wird. Die aktuelle Rechnungsnummer wird in einer INI-Datei im Vorlagenordner gespeichert, so dass sie bei der nächsten Verwendung der Vorlage (oder einer anderen mit dem selben Makro) ausgelesen werden kann.

‚ Increment Invoice Number to New Form Document Sub AutoNew() ‚ Create variables Dim fieldName As String Dim invNumber As String Dim iniFileName As String Dim templatePath As String fieldName = „InvoiceNumber“ iniFileName = „Rechnungen.ini“ templatePath = ActiveDocument.AttachedTemplate.Path ‚ Read value from INI-file invNumber = System.PrivateProfileString(templatePath & _ „\“ & iniFileName, fieldName, „invNumber“) ‚ Increment invoice number If invNumber = „“ Then invNumber = 1 Else invNumber = invNumber + 1 End If ‚ Update Invoice Number in active document ActiveDocument.FormFields(fieldName).Result = invNumber ‚ (Over)Write new value to INI-File System.PrivateProfileString(templatePath & „\“ & _ iniFileName, „InvoiceNumber“, „invNumber“) = invNumber End Sub

Das Makro erwartet in der Vorlagedatei ein Textformularfeld mit folgenden Eigenschaften:

TextFormularFeld

Downloads:

Rechnung_HRT-Unters.dot (in Word <Alt + F11> drücken, um den Code zu sehen)

AutoNew.bas (in Word <Alt + F11> drücken, im VBA-Editor „Datei importieren“ wählen)

Schreibe einen Kommentar

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.