![]() |
Betrifft: Überschriften in Word aus Excel erstellen
von: Bernhard
Geschrieben am: 19.08.2014 10:06:09
Hallo zusammen,
ich möchte aus Excel 2010 mit einem VBA Makro ein Word-Dokument öffenen und in diesem Überschriften erstellen. Der Text für die Überschriften stammen aus der Excel-Datei.
Leider treten die Laufzeitfehler 424 und 438 auf. Kann mir jemand einen Tip geben, was zu korrigieren ist, oder ob es eine elegantere Lösung gibt.
Vielen Dank schon mal.
Hier mein Skrip:
Sub Ueberschriften_aus_Excel_nach_Word() Dim text_uberschrift1 As String Dim text_uberschrift2 As String Dim appWord As Object Dim docTest As Object text_uberschrift1 = Cells(1, 1) text_uberschrift1 = Cells(1, 1) Set appWord = CreateObject("Word.Application") Set docTest = appWord.Documents.Add("C:\LV_Muster.docx") appWord.Visible = True ShowVisualBasicEditor = True Selection.Style = activedocument.Styles("Überschrift 1") 'Laufzeitfehler 424 Selection.TypeText Text = text_uberschrift1 'Laufzeitfehler 438 Selection.TypeParagraph 'Laufzeitfehler 438 Selection.TypeParagraph Selection.Style = activedocument.Styles("Überschrift 2") Selection.TypeText Text = text_uberschrift2 Selection.TypeParagraph Selection.TypeParagraph Set appWord = Nothing Set docTest = Nothing End Sub
![]() ![]() |
Betrifft: AW: Überschriften in Word aus Excel erstellen
von: fcs
Geschrieben am: 19.08.2014 11:19:25
Hallo Bernhard,
wen du unter VBA mit 2 verschiedenen Anwendungen arbeitetst, dann musst du sehr genau darauf achten, dass die Anweisungen in der richtigen Anwendung ausgeführt werden.
Ohne Anwendungs-Object vor "Selection" bezieht sich Selection in einem Excel-Makro immer auf das Selektierte Objekt in Excel. Deshalb die Fehlermeldungen.
Außerdem hast du in den Zeilen mit "TypeText" noch einen Syntax-Fehler; es Fehlt der Dopelpunkt vor dem Gleichheitszeichen.
Gruß
Franz
Sub Ueberschriften_aus_Excel_nach_Word() Dim text_uberschrift1 As String Dim text_uberschrift2 As String Dim appWord As Object Dim docTest As Object text_uberschrift1 = Cells(1, 1) text_uberschrift2 = Cells(1, 2) Set appWord = CreateObject("Word.Application") Set docTest = appWord.Documents.Add("C:\LV_Muster.docx") appWord.Visible = True 'ShowVisualBasicEditor = True 'unnötig - wozu soll das gut sein? With appWord .Selection.Style = docTest.Styles("Überschrift 1") 'Laufzeitfehler 424 .Selection.TypeText Text:=text_uberschrift1 'Laufzeitfehler 438 .Selection.TypeParagraph 'Laufzeitfehler 438 .Selection.TypeParagraph .Selection.Style = docTest.Styles("Überschrift 2") .Selection.TypeText Text:=text_uberschrift2 .Selection.TypeParagraph .Selection.TypeParagraph End With appWord.Activate Set appWord = Nothing Set docTest = Nothing End Sub
![]() ![]() |
Betrifft: AW: Überschriften in Word aus Excel erstellen
von: Bernhard
Geschrieben am: 20.08.2014 12:49:15
Hallo Franz,
vielen Dank für die schnelle Antwort. Es funktioniert alles einwandfrei.
Gruß
Bernhard
![]() |