Written by Allen Wyatt (last updated September 7, 2021)
This tip applies to Word 97, 2000, 2002, and 2003
Assuming the insertion point is located within a bookmark, John wonders how he can use VBA to discover the name of that bookmark and to select all the text within the bookmark.
There are a couple of tricks to keep in mind when working with bookmarks. First, it is best not to assume that the insertion point is within a bookmark. Instead, you can verify if it is within a bookmark by using the following code:
BkMkCount = Selection.Bookmarks.Count
When executed, BkMkCount will contain a value indicating the number of bookmarks. If you are expecting only a single bookmark, then you can verify that the variable is equal to 1 before you proceed with your code.
If you want to figure out the name of the bookmark, then you can use the following:
BkMkName = Selection.Bookmarks(1).Name
If you then want to select all the text in the bookmark, use the following:
Selection.Bookmarks(1).Select
To bring all these concepts together you can use a structure such as the following:
BkMkCount = Selection.Bookmarks.Count If BkMkCount = 1 Then With Selection.Bookmarks(1) BkMkName =.Name .Select End With End If
Note:
WordTips is your source for cost-effective Microsoft Word training. (Microsoft Word is the most popular word processing software in the world.) This tip (6557) applies to Microsoft Word 97, 2000, 2002, and 2003. You can find a version of this tip for the ribbon interface of Word (Word 2007 and later) here: Getting Bookmark Information in VBA.
Learning Made Easy! Quickly teach yourself how to format, publish, and share your content using Word 2013. With Step by Step, you set the pace, building and practicing the skills you need, just when you need them! Check out Microsoft Word 2013 Step by Step today!
Create a bookmark and you may, at some future point, need to delete that bookmark. It's easy to do, as described in this tip.
Discover MoreTables are a great way to organize information in a document. At some point you may want a cell in a table to contain the ...
Discover MoreBookmarks in Word are just like bookmarks used in paper books, any given bookmark may be reused to mark a new location. ...
Discover MoreFREE SERVICE: Get tips like this every week in WordTips, a free productivity newsletter. Enter your address and click "Subscribe."
2015-06-24 10:56:12
Sirajeddine
Hello,
I am copying tables from Excel to word and pasting them as metafile pictures.
I have 2 questions here:
1) How to resize the pictures to fit the page in word (A4) ?
2) How to add headers including bookmarks to these picures: for example above the first picture I want to have the text: Table 1 : Age
above the second picture I want to have the title: Table 2 : Location, ...etc
Many thanks in advance.
2014-09-11 14:46:04
Ron
Sub Is_Bookmark()
BkMkCount = Selection.BookMarks.Count
If BkMkCount = 1 Then
With Selection.BookMarks(1)
BkMkName = .Name
.Select
MsgBox BkMkName
End With
Else
MsgBox "Bookmark is empty"
End If
End Sub
2014-05-07 06:54:18
kem
Hi, thank you for this code. But what if the cursor is not within a bookmark.
How can I handle that?
Kem
Got a version of Word that uses the menu interface (Word 97, Word 2000, Word 2002, or Word 2003)? This site is for you! If you use a later version of Word, visit our WordTips site focusing on the ribbon interface.
Visit the WordTips channel on YouTube
FREE SERVICE: Get tips like this every week in WordTips, a free productivity newsletter. Enter your address and click "Subscribe."
Copyright © 2023 Sharon Parq Associates, Inc.
Comments