Bestimmte Textmarken n i c h t löschen?

Hallo,

ich habe von Euch gelernt, daß mit dem Code

For tmp = ActiveDocument.Bookmarks.Count To 1 Step -1
If Not ActiveDocument.Bookmarks(tmp).Name = „TM“ Then
ActiveDocument.Bookmarks(tmp).Delete
End If
Next

sämtliche Textmarken eines Dokuments mit Ausnahme der Textmarke TM gelöscht werden.

Wie muß die Prozedur verändert werden, wenn sämtliche Textmarken mit Ausnahme z.B. der Textmarken TM, TM1, TM2 und TM3 gelöscht werden sollen?

Die zu erhaltenden Textmarken liegen innerhalb des Dokuments direkt hintereinander, vorher gibt es z.B. 2 weitere, hinterher ebenfalls 5 oder 6 weitere.

Gruß
Wilhelm

Eine mögliche Lösung:

For tmp = ActiveDocument.Bookmarks.Count To 1 Step -1
If Not ActiveDocument.Bookmarks(tmp).Name = „TM“ And Not ActiveDocument.Bookmarks(tmp).Name = „TM1“ And Not ActiveDocument.Bookmarks(tmp).Name = „TM2“ und so weiter… Then
ActiveDocument.Bookmarks(tmp).Delete
End If
Next

mfg
Matthias

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hi Matthias,
Dank für die prompte Hilfe. Ich hatte bei der Erweiterung der If-Abfrage nicht mit And Not, sondern mit Or gearbeitet, was natürlich nicht lief.

Gruß
Wilhelm

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

die schleife könnte auch so

For tmp = ActiveDocument.Bookmarks.Count To 1 Step -1
 If InStr(1,"TMTM1TM2", \_ 
 ActiveDocument.Bookmarks(tmp).Name)=0 Then
 ActiveDocument.Bookmarks(tmp).Delete
 End If
Next

aussehen.

LG, Stefan

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]