Access-Adressen in Word übernehmen

In dem Office-Artikel aus c't 9/2000 erklären Sie auf Seite 122 mit ‘Bei Mausklick Brief’, wie man Access-Datensätze in Word einbindet, um daraus Serienbriefe mit individuellen Anreden zu erstellen. Wie muss das Makro aussehen, wenn ich nur einen einzelnen Datensatz aus Access in ein Word-Dokument importieren möchte?

In Pocket speichern vorlesen Druckansicht
Lesezeit: 1 Min.
Von
  • Björn Hansen

In dem Office-Artikel aus c't 9/2000 erklären Sie auf Seite 122 mit ‘Bei Mausklick Brief’, wie man Access-Datensätze in Word einbindet, um daraus Serienbriefe mit individuellen Anreden zu erstellen. Wie muss das Makro aussehen, wenn ich nur einen einzelnen Datensatz aus Access in ein Word-Dokument importieren möchte?

Wenn Sie die originale Prozedur cmdBrief_Click durch die folgende Routine ersetzen, kopiert Access die ausgewählte Adresse in das geöffnete Word-Dokument. Sofern Word nicht läuft, erscheint eine Fehlermeldung.

Private Sub cmdBrief_Click()
Dim objWord As Object
On Error Resume Next
Set objWord = GetObject(, _
"Word.Application")
If objWord Is Nothing Then
MsgBox "Word ist nicht aktiv."
Exit Sub
End If
With objWord
Visible = True
With .Selection
TypeText Me.Firma & vbCr
TypeText Me.Abteilung & vbCr
TypeText Me.Anrede & " " & _
Me.Vorname & " " & _
Me.Nachname & vbCr
TypeText Me.Adresse & vbCr _
& vbCr
TypeText Me.PLZ & " " & _
Me.Ort & vbCr
End With
.Activate
Set objWord = Nothing
End With
End Sub

Im Unterschied zu der in c't 9/2000 veröffentlichten Lösung, die den Serienbrief-Mechanismus von Word und eine Dokumentvorlage zur Formatierung nutzt, können bei dieser Variante unerwünschte Leerzeilen aufgrund fehlender Feldinhalte entstehen. Außerdem haben Sie keinen Einfluss auf die Formatierung der eingefügten Feldinhalte. (Ralf Nebelo/se) (ha)