Ich möchte einen Zellbereich aus einer Excel-Liste in eine bestehende Word-Tabelle exportieren.
Der Beitrag https://www.herber.de/forum/archiv/1456to1460/1457774_VBA_Excel_Tabelle_an_Word_Tabelle_uebergeben.html hat mir schon etwas weitergeholfen.
Was schon klappt:
- die Auswahl des richtigen Bereichs und der entsprechenden Anzahl Zeilen
- das Übertragen in Word in die richtigen Spalten
Was noch fehlt:
- die Zeilen aller Spalten werden in dieselbe Zelle geschrieben, statt jede in eine eigene.
Das ist mein Code:
Sub TabelleXzuTabelleW()
'Verweis auf MS Word 16 Object Library erforderlich: VB Editor -- Extras -- Verweise
Dim Spalte2 As Range
Dim Spalte3 As Range
Dim oWord As Object
Dim Benutzer As String
With Worksheets("Tabelle1")
Set Spalte2 = .Range("B2:B" & .Cells(Rows.Count, 2).End(xlUp).Row)
Set Spalte3 = .Range("C2:C" & .Cells(Rows.Count, 3).End(xlUp).Row)
End With
Set oWord = CreateObject("Word.Application")
With oWord
.Documents.Add Template:="D:\>\Dokument2.docx"
.Visible = True
.Activate
End With
Spalte2.Copy
oWord.ActiveDocument.Tables(1).Cell(2, 1).Select
oWord.Selection.PasteAndFormat (wdFormatPlainText)
Spalte3.Copy
oWord.ActiveDocument.Tables(1).Cell(2, 2).Select
oWord.Selection.PasteAndFormat (wdFormatPlainText)
Application.CutCopyMode = False
End Sub
Die Spalten 2 und 3 werden richtig gewählt, die vorhandenen Zeilen kopiert. Werden z.B. 4 Zeilen kopiert, stehen diese dann in Word alle in derselben Zelle.Wie kann ich den Code umbauen, damit jede Zeile in eine separate Zeile geschrieben wird?
Besten Dank für jede Hilfe.