Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1236to1240
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Markierten Bereich aus Excel in Word einfügen
Peter
Hallo liebes Forum,
ich möchte einen zusammenhängenden markierten Bereich aus Excel per Makro in ein existierendes Worddokument einfügen.
Einzelne Teile habe ich mir per Makrorekorder oder aus Archiv zusammengbastelt:
Selection.Copy
Pfad = ThisWorkbook.Path & "\Dokument1.doc"
Dim WdApp As Object
Dim wdDok As Object
Set WdApp = CreateObject("Word.Application")
Set wdDok = WdApp.documents.Open(Filename:=Pfad, ReadOnly:=True)
WdApp.Visible = True
WdApp.Activate
Set wdDok = Nothing
Set WdApp = Nothing
(...)
End Sub
Hier (...) fehlt mir noch, wie ich die Markierung aus dem Zwischenspeicher in das Dokument einfüge, idealerweise nicht am Anfang des Dokumentes, wo der Cursor standardmäßig steht, sondern am Ende oder an einer definierten Textmarke.
Könnt ihr mir einen Tip geben?
Gruß,
Peter

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Markierten Bereich aus Excel in Word einfügen
18.11.2011 19:43:13
ing.grohn
Hallo Peter,
wenn Du die Klammer in den Beispiel erreichst, ist schon alles passiert!
Wiw man das mit der zwischen ablage macht, kann ich nicht sagen. Ich geb aber mal ein paar Beispiele was auch geht: (Teile zwischen Visible und Activate einfügen)

With WdDok
.Bookmarks("Anrede").Range.Text = Range("A" & Zeile).Value 'Anrede
.Bookmarks("Vorname").Range.Text = Range("C" & Zeile).Value 'Vorname
.Bookmarks("Name").Range.Text = Range("B" & Zeile).Value 'Name
.Bookmarks("Strasse").Range.Text = Range("D" & Zeile).Value 'Strasse
.Bookmarks("Ort").Range.Text = Range("E" & Zeile).Value _
& " " & Range("F" & Zeile).Value 'PLZ & " " & Ort
End With

die Bookmarks mußt du vorher in Word festlegen! Die Zeile ist irgendeine Excel-Zeile. Ort und PLZ sind Stringvariablen die irgendwo ihren Wert bekommen.
Noch Beispiel:

With WdDok
With .Application.Selection
.MoveDown Unit:=wdLine, Count:=15 'in einem fertigen Text 15 Zeilen runter
.TypeParagraph
.TypeText Text:="Unser Zeichen: "
.Font.Bold = wdToggle
.TypeText Text:=frm1.TextBox14.Value & " "  _
& frm1.TextBox24.Value  'Prozessregister
.Font.Bold = False
.TypeParagraph
End With
End With
Du kannst sowohl freien Text übergeben oder auch Inhalte von Textboxen!
Vielleicht hilft dir das weiter.
Mit freundlichen Grüßen
Albrecht
Anzeige
AW: Markierten Bereich aus Excel in Word einfügen
18.11.2011 20:23:25
ing.grohn
Hallo Peter,
jetzt aus der Zwischenablage:

Sub testword()
Dim Pfad As String
Dim WdApp As Object
Dim wdDok As Object
Selection.Copy
Pfad = ThisWorkbook.Path & "\Test.doc" 'ändern für deine Datei
Set WdApp = CreateObject("Word.Application")
Set wdDok = WdApp.Documents.Open(Filename:=Pfad, ReadOnly:=True)
WdApp.Visible = True
With wdDok
With .Application.Selection
.MoveDown Unit:=wdLine, Count:=15 ' 15 Zeilen runter
WordBasic.EditOfficeClipboard
.PasteExcelTable False, False, False
.TypeParagraph
.Font.Bold = wdToggle
.TypeText Text:="Jetzt wurde eine Makierung aus Excel eingefügt "
.Font.Bold = False
.TypeParagraph
.TypeText Text:="der Text oben war Fett"
.TypeParagraph
End With
End With
WdApp.Activate
Set wdDok = Nothing
Set WdApp = Nothing
End Sub

Vielleicht hilfts
Mit freundlichen Grüßen
Albrecht
Anzeige

313 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige