Angenommen, die Einfügemarke befindet sich innerhalb eines Lesezeichens, fragt sich John, wie er mit VBA den Namen dieses Lesezeichens ermitteln und den gesamten Text innerhalb des Lesezeichens auswählen kann.

Bei der Arbeit mit Lesezeichen sind einige Tricks zu beachten. Zunächst ist es am besten, nicht anzunehmen, dass sich die Einfügemarke innerhalb eines Lesezeichens befindet. Stattdessen können Sie mithilfe des folgenden Codes überprüfen, ob es sich innerhalb eines Lesezeichens befindet:

BkMkCount = Selection.Bookmarks.Count

Bei der Ausführung enthält BkMkCount einen Wert, der die Anzahl der Lesezeichen angibt. Wenn Sie nur ein einziges Lesezeichen erwarten, können Sie überprüfen, ob die Variable gleich 1 ist, bevor Sie mit Ihrem Code fortfahren.

Wenn Sie den Namen des Lesezeichens herausfinden möchten, können Sie Folgendes verwenden:

BkMkName = Selection.Bookmarks(1).Name

Wenn Sie dann den gesamten Text im Lesezeichen auswählen möchten, verwenden Sie Folgendes:

Selection.Bookmarks(1).Select

Um all diese Konzepte zusammenzuführen, können Sie eine Struktur wie die folgende verwenden:

BkMkCount = Selection.Bookmarks.Count If BkMkCount = 1 Then     With Selection.Bookmarks(1)

BkMkName =.Name         .Select     End With End If

_Hinweis: _

Wenn Sie wissen möchten, wie die auf dieser Seite (oder auf einer anderen Seite der WordTips-Websites) beschriebenen Makros verwendet werden, habe ich eine spezielle Seite vorbereitet, die hilfreiche Informationen enthält.

WordTips ist Ihre Quelle für kostengünstige Microsoft Word-Schulungen.

(Microsoft Word ist die weltweit beliebteste Textverarbeitungssoftware.) Dieser Tipp (6557) gilt für Microsoft Word 97, 2000, 2002 und 2003. Sie finden eine Version dieses Tipps für die Multifunktionsleistenschnittstelle von Word (Word 2007) und später) hier: