Peter编写了手册,并可以以正常方式自动生成章节的目录。这使读者可以单击TOC条目并跳至标题,但是无法单击标题并返回TOC。因此,读者可以这样做,Peter必须单独将超链接应用于标题,然后摆脱下划线,这使他感到难看。手册的一章可以包含数百个标题,因此单独应用超链接的任务可能很麻烦。 Peter想知道是否有一种方法可以根据需要自动将超链接添加到标题。

彼得的方法虽然很好,但完全没有必要。

Word确实提供了一种方法,可以单击目录中的标题(彼得知道),然后返回目录中的标题(彼得显然不知道)。完成此任务的特定快捷方式是Alt +向左键。该快捷方式会跳回到您在目录中单击超链接之前的位置,这非常适用于较长的目录-您将返回到原先的位置,而不是目录的开头。

快速访问工具栏”中添加“后退”按钮,可以单击该按钮以返回到TOC的出发点。请按照下列步骤操作:

。显示“ Word选项”对话框。 (在Word 2007中,单击Office按钮,然后单击Word选项。在Word 2010或更高版本中,显示功能区的“文件”选项卡,然后单击“选项”。)

。在对话框的左侧,单击“自定义”(Word 2007)或“快速访问工具栏”(Word的更高版本)。 (请参见图1。)

。使用“从以下位置选择命令”下拉列表,选择“所有命令”。

。在命令列表中,找到并选择“上一步”命令。

。单击添加按钮。现在,“后退”命令将显示在对话框的右侧,在“快速访问工具栏”命令列表中。

。使用向上和向下箭头按钮在快速访问工具栏命令中放置“后退”命令。

。单击确定。

现在显示在快速访问工具栏上的“后退”命令执行的功能与Alt +向左箭头快捷键完全相同。

如果您仍想将超链接添加到标题,则自动执行此过程的唯一方法是使用宏。下面的宏逐步浏览文档第一个TOC中的每个条目,在文本主体中找到引用的标题,然后将超链接添加回TOC。

Sub HyperlinkHeadings()

Dim hyp As Hyperlink     Dim toc As TableOfContents     Dim k As Long     Dim bkmk As String     Dim sCode As String     Dim fld As Field     Dim aRange As Range

If ActiveDocument.TablesOfContents.Count = 0 Then         MsgBox "There are no Tables of Contents in document"

Exit Sub     End If

Set toc = ActiveDocument.TablesOfContents(1)



For Each fld In toc.Range.Fields         sCode = fld.Code.Text         If InStr(sCode, "HYPERLINK") > 0 Then             bkmk = Mid(sCode, InStr(sCode, "_"))

bkmk = Left(bkmk, Len(bkmk) - 2)

fld.Select             ActiveDocument.Bookmarks.Add Range:=Selection.Range, _               Name:=bkmk & "R"



Set aRange = ActiveDocument.Bookmarks(bkmk).Range             aRange.Select             With ActiveDocument.Hyperlinks.Add(Anchor:=Selection.Range, _                 Address:="", SubAddress:=bkmk & "R", _                   TextToDisplay:=Selection.Text)

.Range.Select                 Selection.ClearCharacterAllFormatting             End With         End If     Next fld

Options.CtrlClickHyperlinkToOpen = False End Sub

注意:

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

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

(Microsoft Word是世界上最流行的文字处理软件。)本技巧(13059)适用于Microsoft Word 2007、2010、2013、2016、2019和Office 365中的Word。