Es soll ein Dokument hergestellt werden welches beim öffnen automatisch eine Dialogbox zur Abfrage von: "Nachname, Vorname, Adresse, PLZ, Ort" anzeigt. Sobald der Anwender die Daten erfasst hat, sollen diese durch ein VB-Programm an die entsprechenden Positionen im Text eingefügt werden.
Erstellen Sie das Grundgerüst eines Briefes. Anstelle der Informationen von Nachname, Vorname, Adresse, PLZ und Ort fügen sie Formularfelder ein.
Private Sub cmdOk_Click() With ActiveDocument .FormFields("tmVorname").Result = Me.tbVorname .FormFields("tmNachname").Result = Me.tbNachName .FormFields("tmAdresse").Result = Me.tbAdresse .FormFields("tmPLZ").Result = Me.tbPLZ .FormFields("tmOrt").Result = Me.tbOrt If Me.obMann.Value = True Then .FormFields("tmGeschlecht").Result = "r" .FormFields("tmAnrede").Result = "Herr" Else .FormFields("tmGeschlecht").TextInput.Clear .FormFields("tmAnrede").Result = "Frau" End If .FormFields("tmAnredeName").Result = Me.tbNachName End With Me.Hide End Sub
Obiger Code ist im Codeteil des Formular gespeichert. Durch einen Doppelklick auf das Formular und dann doppelklick auf das gewünschte Feld kann der Code angezeigt werden.
Damit die Dialogbox immer beim erstellen eines neuen Briefes aufgerufen wird sollte:
Weitere Auto-Funktionen sind: AutoClose, AutoPrint, AutoExec, AutoOpen. Es ist zu beachten dass diese Procedur entweder im Dokument oder in einem Modul des Projektes (der Vorlage) gespeichert ist.
Nun kann noch eine Symbolleiste erstellt werden mit einem Symbol welches auf Bedarf ebenso die Dialogbox aufruft.
Sub AutoNew() Call DlgAnzeigen End Sub Sub DlgAnzeigen() With frmDateneingabe .tbVorname = ActiveDocument.FormFields("tmVorname").Result .tbNachName = ActiveDocument.FormFields("tmNachName").Result End Witdh frmDateneingabe.Show End Sub