Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

WORD-Datei in EXCEL über VBA öffnen





Frage

Hallo Supportgemeinde, ich arbeite in EXCEL mit VBA. In meiner EXCEL Datei habe ich Felder, die in eine WORD Datei übertragen werden müssen. Nun kann ich in EXCEL/VBA die WORD Datei nicht öffnen, es kommt immer der Fehler 424 "Objekt erforderlich". Ich glaube, es fehlt irgendwie eine Definition, denn wenn ich den VBA-Code in eine WORD Datei bringe, geht es. Hat jemand eine Idee? Danke & Gruß

Antwort 1 von JoeKe

Hallo,

sieh dir diesen thread AW 4 mal an.

Gruß

JöKe

Antwort 2 von user3

Hallo JöKe,

vielen Dank für den Tipp, das Filehandling hat geklappt, siehe anbei das SUB (ein Fehler ist noch bei der GEHEZU Funktion, da bekomme ich immer "Textmarke nicht definiert", obwohl die sicher da ist. Hast Du da noch einen Tipp?

Vielen Dank nochmal & Gruß

Sub worddatei_anlegen(inhalt As String, _
speichern_unter_dateiname As String, _
vorlagen_dateiname)

Dim objWord As Object

Rem Erzeugt eine WORD-Applikation
Set objWord = CreateObject("Word.Application")

Rem Öffne nun die Vorlagendatei in WORD
With objWord
.Documents.Open filename:=vorlagen_dateiname
.Visible = True
.Activate
End With

Rem In der Vorlagendatei ist die Textmarke "lieferdatum" definiert
Rem GeheZu der Textmarke und fülle an diese Stelle den Parameter <inhalt> ein
With objWord
.Selection.Goto What:=wdGoToBookmark, Name:="lieferdatum" ´<== da kommt ein Laufzeitfehler!!
.Selection.Find.ClearFormatting
.Selection.TypeBackspace
.Selection.TypeText Text:=inhalt
End With

Rem Geänderte Vorlagendatei unter neuem Namen <speichern_unter_dateiname> speichern
With objWord
.ActiveDocument.SaveAs filename:=speichern_unter_dateiname
.ActiveDocument.Close
End With

Rem WORD-Applikation muss wieder geschlossen werden
objWord.Application.Quit

Rem löscht den Verweis auf das WORD Objekt
Set objWord = Nothing
End Sub

Antwort 3 von user3

Hallo,

die Textmarke wird wie folgt verändert :

...
With objWord
.ActiveDocument.Bookmarks("lieferdatum").Range.Text = inhalt
End With

Die "GoTo" -Methode ist nicht gut, siehe dazu den Link
http://www.vb-fun.de/cgi-bin/loadframe.pl?ID=vb/tipps/tip0036.shtml

Gruß & danke nochmal für die Hilfe
User3

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: