Einzelnen Beitrag anzeigen

tsteinmaurer

Registriert seit: 8. Sep 2008
Ort: Linz, Österreich
530 Beiträge
 
#1

Problem mit Word OLE Automation

  Alt 8. Apr 2011, 08:59
Delphi-Version: 5
Hallo,

Delphi 2007. Habe ein Word 2000 Dokument mit 6 Textmarken. Diese möchte ich via Delphi befüllen. Im Beispiel unten ist document ein Variant auf das aktive/geöffnete Dokument

Delphi-Quellcode:
...
anzahl := document.Bookmarks.Count;
for k := 1 to anzahl do
begin
  bookmarkName := document.Bookmarks.Item(k).Name;
  ...
end;
In anzahl steht korrekt 6 drinnen, d.h. die Anzahl laut Dokument stimmt. Wenn ich jetzt aber in der Schleife per k-Index auf ein Bookmark zugreife, dann klappt das für die ersten vier und beim 5. kracht es mit folgender Fehlermeldung.

"Das angeforderte Element ist nicht in der Sammlung vorhanden."

Laut Debugger sieht man auch, dass es scheint, wie wenn zwei Textmarken "übersprungen" werden. z.B. gibt es laut Sorting nach Namen im Word-Dokument folgende Textmarken:

TM1
TM2
TM3
TM4
TM5
TM6

Wobei der k-index dann wie folgt zugreift:

k = 1 => TM1
k = 2 => TM3
k = 3 => TM5
k = 4 => TM6

Bei k = 5 kracht es dann. Wie man sieht, wurden TM2 und TM4 ausgelassen. Sehr seltsam.

Hat jemand eine Ahnung?

Danke und lg,
Thomas
  Mit Zitat antworten Zitat