Ich habe in Excel eine Liste angefertigt, deren Daten ich in verschiedene Word-Vorlagen eintragen möchte. Das Auswählen und Öffnen der Word-Dateien funktioniert. Auch das Befüllen einer Word-Datei über Textmarken, samt Speichern funktioniert. Beides zusammen leider nicht, da ich, so vermute ich, nicht die Verbindung zwischen dem aktiven Word-Dokument und meiner Excel herstellen kann. Hier schon an verschiedener stelle gepostete Lösungen haben mir nicht weitergeholfen. Vielleicht ist dazu aber auch mein Wissen noch zu gering, um es zu adaptieren.
Es wäre super, wenn mir hier jemand Starthilfe geben könnte.
Hier mein Code:
Sub opendocument()
'Word-Datei öffnen
Dim wb As Workbook
'Dim ws As Worksheet
Dim lngZ As Long
Dim AppWD As Object
Dim fn
fn = Application.GetOpenFilename("Word-Dokumente, *.doc*", , "Bitte Datei auswählen")
If fn = False Then Exit Sub 'Abbrechen gedrückt
Set AppWD = CreateObject("Word.Application") 'Word als Object starten
AppWD.Visible = True
AppWD.Documents.Open fn
Set AppWD = Nothing
'Mit geöffneter Word-Applikation connecten
Set AppWD = GetObject(, "Word.Application")
'Bibliothek aktivieren
Dim doc As Word.Document
Dim Zeile As Long
Zeile = ActiveCell.Row
'Word-Datei mit Excel-daten befüllen
doc.Bookmarks("Titel").Range.Text = WSProjektdaten.Cells(Zeile, 1).Value
doc.Bookmarks("Projektname").Range.Text = WSProjektdaten.Cells(Zeile, 2).Value
doc.Bookmarks("Gebäude").Range.Text = WSProjektdaten.Cells(Zeile, 3).Value
doc.Bookmarks("Straße").Range.Text = WSProjektdaten.Cells(Zeile, 4).Value
doc.Bookmarks("PLZOrt").Range.Text = WSProjektdaten.Cells(Zeile, 5).Value
doc.Bookmarks("Errichter").Range.Text = WSProjektdaten.Cells(Zeile, 7).Value
doc.Bookmarks("Teilnehmer1").Range.Text = WSProjektdaten.Cells(Zeile, 8).Value
doc.Bookmarks("Teilnehmer2").Range.Text = WSProjektdaten.Cells(Zeile, 9).Value
doc.Bookmarks("Teilnehmer3").Range.Text = WSProjektdaten.Cells(Zeile, 10).Value
doc.Bookmarks("Datum").Range.Text = Date
'Word-Datei abspeichern
doc.saveAS2 ThisWorkbook.Path & " " & WSProjektdaten.Cells(Zeile, 11).Value & "_" & WSProjektdaten.Cells(Zeile, 6).Value & "_" & WSProjektdaten.Cells(Zeile, 3).Value & ".docx"
End Sub
VG
Nicole