Excel Zelleninhalte in Textmarke Word einfügen - VBA

kaschdewasser

Lt. Junior Grade
Registriert
Aug. 2005
Beiträge
273
Hallo zusammen,

ich möchte gerne aufgrund einer Checkliste in Excel eine Word-Datei mit leben füllen.
Dabei hat die Word-Datei schon fest integrierte Texte, die nicht verändert werden sollen. Im Word-vorlagendokument bestehen verschiedene textmarken, in die der Excel-Text automatisch eingefügt werden soll.

Excel bekommt seine Informationen über eine Checkliste mit Sverweis, d.h. im 2. Blatt stehen alle tatsächlichen Texte, die später im Word-Dokument stehen sollen, und im 1. Blatt gibts eine Übersicht mit 1000 haken, die zu setzen sind.

Mit Sverweis bekomme ich den Text auch schon im 1. Blatt angezeigt.

Jetzt habe ich folgenden VBA-Code:

Public Sub ZugriffaufWord()
Dim WordObj As Object
Dim strPfad As String
Dim Bereich As Range
Dim rngZelle As Range
Dim strText As String
'################################################################################################
'Nicht vergessen, unter Extras - Verweise - Microsoft Word 11.0 Object Library - ein Häkchen setzen
'#################################################################################################

Set Bereich = Worksheets("Tabelle1").Range("A1") 'Bereich bitte anpassen
strPfad = "C:\vorlage.doc" 'Pfad bitte anpassen

For Each rngZelle In Bereich
strText = strText & " " & rngZelle.Value
Next
'Word öffnen falls nicht schon offen und Kopie der Vorlage erzeugen.
'In der Vorlage muss eine Textmarke gesetzt werden. In diesem Beispiel heisst sie "Hier"
'bitte anpassen.
On Error Resume Next
Set WordObj = GetObject(, "Word.Application")
If WordObj Is Nothing Then
Set WordObj = CreateObject("Word.Application")
Else
End If
WordObj.Documents.Add Template:=strPfad
WordObj.Visible = True
If WordObj.ActiveDocument.Bookmarks.Exists("test") Then
WordObj.ActiveDocument.Bookmarks("test").Range.Text = strText
Else
MsgBox "Die Textmarke MarkeAnrede ist nicht vorhanden"
End If
Set WordObj = Nothing

End Sub


Dieser code fügt den Text in Zelle A1 in die Textmarke "test" im Word-Dokument ein.
Ich bräuchte diesen Code so modifiziert, dass er so einfügt:

Text aus Zelle C1 in Textmarke C1
Text aus Zelle D1 in Textmarke D1
Text aus Zelle E1 in Textmarke E1
Text aus Zelle C2 in Textmarke C2
Text aus Zelle D2 in Textmarke D2, usw....
bis zu D50, sollte normalerweise reichen.

Kann mir jemand helfen? der Quellcode von oben wurde aus diversen quellen zusammenkopiert und leicht modifziert, aber einen Zähler einbauen, dafür sind meine vba-kenntnisse zu schlecht...


vielen Dank schonmal im Voraus!
 
Zurück
Oben