作为宏的一部分,您可能需要处理存储在书签中的信息。例如,您可能需要提取书签中的文本,将其分配给变量,然后根据变量内容进行一些处理。

您可以通过两种方式将书签的内容分配给VBA宏中的变量。首先是简单地跳到书签并选择它,然后使变量等于选择内容。以下代码行将对名为MyBookmark的书签执行此操作:

Dim sMyString As String Selection.GoTo What:=wdGoToBookmark, Name:="MyBookmark"

sMyString = Selection.Text

如果不想更改文档中的选择,也可以只使用Word维护的“书签”集合。

假设您仍然需要MyBookmark书签的内容,下面的代码可以解决问题:

Dim sMyString As String sMyString = ActiveDocument.Bookmarks("MyBookmark").Range.Text

请注意,书签的名称(“ MyBookmark”)不必都是静态值,如这两个示例所示。如果需要,可以用一个变量替换静态值,如下所示:

Dim sMyString As String Dim sBName As String sBName = "Boilerplate"

Selection.GoTo What:=wdGoToBookmark, Name:=sBName sMyString = Selection.Text

在此示例中,书签名称(您要获取并放入sMyString的内容的书签名称)包含在sBName变量中。

在开发自己的代码时,您可以轻松地为用户创建一种输入书签名称并将其分配给sBName变量的方法。

注意:

如果您想知道如何使用此页面(或_WordTips_网站上的任何其他页面)上描述的宏,我准备了一个包含有用信息的特殊页面。

_WordTips_是您进行经济有效的Microsoft Word培训的来源。

(Microsoft Word是世界上最流行的文字处理软件。)此技巧(8876)适用于Microsoft Word 2007、2010、2013、2016、2019和Office 365中的Word。您可以找到此技巧的一个版本Word的旧菜单界面在这里: