Wieso unverträgliche Typen bei diesem Code?

1 Antwort

Vom Beitragsersteller als hilfreich ausgezeichnet

Bei mir geht es, wenn ich es direkt in Word implementiere. Mein Aufruf:

Sub optimierer()
 ReSetBookmark Documents(1), "Lesezeichen", "Ersatztext"
End Sub

Suboptimierer  11.05.2022, 11:18

In Excel kann ich den Fehler nachvollziehen. Ich kenne die genaue Bezeichnung der Worddatentypen nicht, wie ich sie in Excel verwenden muss.

Eine typenlose Definition könnte dir fürs Erste helfen:

Sub optimierer()
 Dim doc
 Dim word
 Set word = CreateObject("Word.Application")
 Set doc = word.documents.Open("C:\tmp\test_bookmark.docm")
 ReSetBookmark doc, "Lesezeichen", "Ersatztext"
 word.Visible = True
End Sub

Public Sub ReSetBookmark(ByVal doc, ByVal TMName As String, ByVal TMInhalt As String)
'Recycling-Textmarke mit übernommenen Werten, geht für alle Textmarken

   Dim bm
   Dim rng

   If doc.Bookmarks.Exists(TMName) Then
   ...
1
fx8350 
Beitragsersteller
 12.05.2022, 12:16
@Suboptimierer

Hi, ich hatte den Fehler schon gefunden, war ein Fehler bei der Typenvergabe.

1