Mori的文档中以黑体字列出了“关键字”。他想创建一个包含这些关键字的索引。森不知道是否有一种方法可以自动标记所有粗体词组,以便它们出现在索引中。

您可以通过两种方法来完成此任务。也许最简单的方法是利用Word的AutoMark功能来创建索引条目。诀窍是将您想要的单词(您想要输入索引的单词)放入自己的文件中。这是一种简单的方法:

。打开您要为其索引的文档。

。创建一个新的空白文档。

。切换回您的源文档(您要为其索引的文档)。

。按Ctrl + H。 Word将显示“查找和替换”对话框的“替换”选项卡。

。单击查找选项卡。 (步骤4和5是必需的,因为Ctrl + F在Word 2010和更高版本中无法以传统方式工作。)

(请参见图1。)

。确保“查找内容”框为空,并且插入点在其中。

。按Ctrl + B。 Word表示您要查找粗体文本。

。单击查找范围选项,然后选择主文档。 Word选择文档中所有粗体字和短语。

。单击关闭以关闭“查找和替换”对话框。

。按Ctrl + C。所有单词都将复制到剪贴板。

。切换到空白文档。

。按Ctrl + V。现在,所有单词都在以前的空白文档中,每行一个单词。

使用他们自己的文档中的单词,您可以轻松地对它们进行排序并查找任何重复项。消除重复项,以便获得唯一的单词和短语的列表,每行一个。然后,您需要将单词转换为表格。只需选择它们,显示功能区的“插入”选项卡,然后选择“表” |“表”。将文本转换为表格。您最终应该得到一个表,该表只有一个列,该列中包含您的单词和短语。 (如果最后有多列,则可能要撤消转换,并在单词和短语列表中查找任何制表符。如果找到它们,请删除它们,因为它们会触发转换以添加另一列。)

||||将所有单词和短语放在同一列中,在第一列的右侧添加第二列。为了使自动标记功能发挥最佳作用,第一列需要包含您想要在文档中标记的单词或短语,第二列需要包含您希望这些单词和短语在索引中显示的方式。

例如,您可能在第一列中使用同一短语的多个变体,例如“合计结果”,“合计结果”,“合计响应”和“合计响应”。如果您希望其中的每一个出现在索引中的“统计结果”下面,则可以将该词组放置在每个原始词组的右侧。如果希望左列中的单词或短语与索引中使用的单词或短语相同,则只需将其从左列复制到右列即可。

完成列表后,保存文档。然后,您可以通过以下方式使用创建的内容为原始文档自动标记:

。显示功能区的“引用”选项卡。

。单击插入索引工具。 Word将显示“索引”对话框的“索引”选项卡。 (请参见图2。)

。单击自动标记按钮。 Word将显示“打开索引自动标记文件”对话框。

。使用对话框中的控件选择包含关键字和短语列表的文件。

。单击打开。

而已。 Word将单词列表用作其应在文档中标记的“路线图”。完成自动标记功能后,您可以根据需要创建索引。

如果愿意,可以根据文本是否为粗体使用宏来标记文档中的所有索引条目。以下示例仅在文档中搜索任何粗体文本。如果找到该文本,则在其中插入索引条目。

Sub InsertingIndexEntries()

Application.ScreenUpdating = False

'Go to the first page of the document     Selection.HomeKey wdStory, wdMove

'Set up the Find and Replace operation     Selection.Find.ClearFormatting     Selection.Find.Replacement.ClearFormatting     With Selection.Find         .Text = ""

.Replacement.Text = ""

.Forward = True         .Wrap = wdFindContinue         .Format = True         .MatchWildcards = False         .Font.Bold = True     End With

'Finds the bold text and inserts an index entry.

Do         Selection.Find.Execute         If Selection.Find.Found Then             'Checks if the Index field was selected             'This occurs if it does not contain any entries             If UCase(Selection.Range.Text) <> "NO INDEX ENTRIES FOUND." Then                 'Insert an index entry and use the text within                 'the selected range as the entry name                 ActiveDocument.Indexes.MarkEntry _                   Range:=Selection.Range, _                   Entry:=Selection.Range.Text, _                   EntryAutoText:=Selection.Range.Text, _                   CrossReference:="", _                   CrossReferenceAutoText:="", _                   BookmarkName:="", _                   Bold:=False, _                   Italic:=False, _                   Reading:=""

'Move past text that was found and the new index entry                 Selection.MoveRight wdCharacter, 1, wdExtend                 Selection.Collapse wdCollapseEnd             End If         End If     Loop While Selection.Find.Found

Application.ScreenUpdating = True     Application.ScreenRefresh End Sub

请记住,该宏会在文档中找到所有粗体文本,包括(可能)您可能不希望看到的地方。例如,如果您有一些标题设置为粗体,则这些标题也将标记为索引。此外,如果您多次运行该宏,则每个粗体词组或单词的结尾可能会带有多个索引条目。如果需要多次运行它,请在重新运行它之前除去现有的索引字段。

注意:

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

链接:/ wordribbon-WordTipsMacros [点击此处在新的浏览器标签中打开该特殊页面]。

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

(Microsoft Word是世界上最流行的文字处理软件。)本技巧(10438)适用于Microsoft Word 2007、2010、2013、2016、2019和Office 365中的Word。 Word的旧菜单界面在这里:

链接:/ word-Putting_Bold_Words_in_an_Index [将粗体字放入索引中]。