Excel-Word-Verknüpfen

Excel automatisiert mit Word verknüpfen

Ich zeige dir, wie du deine Excel Anwendung mit Word verknüpfen kannst. Das erhöht die Effizienz enorm, da Dokumente somit schnell und präzise erstellt werden. Auch die Benutzerfreundlichkeit deiner Anwendung wird gesteigert, da Rechnungen, Angebote, Lieferscheine etc. nicht mehr händisch befüllt werden müssen.

Schritt 1: Word Vorlage erstellen

Starte damit, eine Word Vorlage zu erstellen. Wichtig dabei ist, dass du für dynamische Inhalte (Datum, Name, Beträge, etc.) Textmarken hinzufügst, die wir später aus Excel VBA heraus ansprechen können.

Schritt 2: Excel VBA Zugriff auf Word freigeben

Jetzt musst du Excel Zugriff auf Word gestatten. Aktiviere dazu unter Extras – Verweise die Word Bilbiothek (Microsoft Word 16.0 Object Library)

Schritt 3: Excel VBA mit Word verknüpfen

Jetzt kannst du auf die Wordvorlage mit dem entsprechenden Pfad zugreifen und die Textmarken mit Inhalten aus deiner Excel Anwendung befüllen. So kannst du einerseits Einzeldokumente erstellen oder auch einen Serienbrief.

Code für Einzeldokumente:

				
					Sub ExportToWord()

'Bibliothek aktivieren

Dim wordapp As New Word.Application
Dim doc As Word.Document
Dim wrdPic As Word.InlineShape
Dim Zeile As Long

Zeile = ActiveCell.Row

'Word sichtbar machen
wordapp.Visible = True

'Word-Datei öffnen
Set doc = wordapp.Documents.Open("C:\Users\kaiwe\Desktop\Newsletter-Template.docx")

'Word-Datei mit Excel-Daten befüllen
doc.Bookmarks("Firma").Range.Text = Kundendaten.Cells(Zeile, 5).Value
doc.Bookmarks("Straße").Range.Text = Kundendaten.Cells(Zeile, 7).Value
doc.Bookmarks("Ort").Range.Text = Kundendaten.Cells(Zeile, 8).Value
doc.Bookmarks("Land").Range.Text = Kundendaten.Cells(Zeile, 9).Value
doc.Bookmarks("Datum").Range.Text = Date
doc.Bookmarks("Ansprechpartner").Range.Text = Kundendaten.Cells(Zeile, 6).Value

'Bild einfügen
Set wrdPic = doc.Bookmarks("Bild").Range.InlineShapes.AddPicture("C:\Users\kaiwe\Desktop\Beispielbild.jpg")
'wrdPic.ScaleHeight = 10
'wrdPic.ScaleWidth = 10

'Word-Datei abspeichern
doc.SaveAs2 ThisWorkbook.Path & "\Newsletter " & Kundendaten.Cells(Zeile, 4).Value & ".docx"

'Word-Datei als PDF abspeichern
doc.ExportAsFixedFormat ThisWorkbook.Path & "\Newsletter " & Kundendaten.Cells(Zeile, 4).Value & ".pdf", wdExportFormatPDF

'Word-Datei schließen
doc.Close SaveChanges:=False

'Word-Applikation schließen
wordapp.Quit

End Sub
				
			

Code für Seriendruck:

				
					Sub ExportToWord_Seriendruck()

'Bibliothek aktivieren

Dim wordapp As New Word.Application
Dim doc As Word.Document
Dim wrdPic As Word.InlineShape
Dim Zeile As Long

'Word sichtbar machen
wordapp.Visible = True

For Zeile = 11 To Kundendaten.Cells(Rows.Count, 4).End(xlUp).Row

    'Word-Datei öffnen
    Set doc = wordapp.Documents.Open("C:\Users\kaiwe\Desktop\Newsletter-Template.docx")
    
    'Word-Datei mit Excel-Daten befüllen
    doc.Bookmarks("Firma").Range.Text = Kundendaten.Cells(Zeile, 5).Value
    doc.Bookmarks("Straße").Range.Text = Kundendaten.Cells(Zeile, 7).Value
    doc.Bookmarks("Ort").Range.Text = Kundendaten.Cells(Zeile, 8).Value
    doc.Bookmarks("Land").Range.Text = Kundendaten.Cells(Zeile, 9).Value
    doc.Bookmarks("Datum").Range.Text = Date
    doc.Bookmarks("Ansprechpartner").Range.Text = Kundendaten.Cells(Zeile, 6).Value
    
    'Bild einfügen
    Set wrdPic = doc.Bookmarks("Bild").Range.InlineShapes.AddPicture("C:\Users\kaiwe\Desktop\Beispielbild.jpg")
    'wrdPic.ScaleHeight = 10
    'wrdPic.ScaleWidth = 10
    
    'Word-Datei abspeichern
    'doc.SaveAs2 ThisWorkbook.Path & "\Newsletter " & Kundendaten.Cells(Zeile, 4).Value & ".docx"
    
    'Word-Datei als PDF abspeichern
    doc.ExportAsFixedFormat ThisWorkbook.Path & "\Newsletter " & Kundendaten.Cells(Zeile, 4).Value & ".pdf", wdExportFormatPDF
    
    'Word-Datei schließen
    doc.Close SaveChanges:=False
    
Next Zeile

'Word-Applikation schließen
wordapp.Quit

End Sub

'Bereitgestellt von VBATrainer: www.vbatrainer.de

End Sub
				
			

Ich hoffe dieses Tutorial hilft dir dabei, deine Anwendungen effektiver und Nutzerfreundlicher zu gestalten.

Um VBA zu lernen und besser zu verstehen, empfehle ich dir mein kostenloses Grundlagentraining, in dem ich dir die ersten Schritt in Excel-VBA zeige.

Teile diesen Beitrag

Empfehlungen für dich

VBATrainer Excel VBA Coaching - Lagerverwaltung

Sichere dir jetzt meine kostenlose Lagerverwaltungs-Anwendung