我有一个 Word2010 文档,它是通过艾克斯。
- 每个标题都采用自定义样式进行格式化(“AxureHeading1”,“AxureHeading2”,“AxureHeading3”)。
- 我以前可以使用自定义标题创建目录:
References tab, click Table of Contents, click Insert Table of Contents, and then click Options. Under Available styles
。 - 但我不知道该怎么做才能将这些自定义标题包含在导航窗格中
我可以做什么
- 使用 Word 中的内置标题更改每个自定义标题(级别 1、2、3),而无需手动单击并选择每个标题(VBA 宏?)
- 或调整自定义标题样式,使其显示在导航窗格中
显示内置标题的导航窗格图像
更新
看来我的宏方法有效(选项 1)。但如果有人知道选项 2 的方法,我仍然很想听听。
答案1
不需要 VBA。
在修改样式对话框中,选择格式 - 段落,然后将大纲级别从正文更改为所需的大纲级别。
这会将具有该样式的所有标题添加到导航窗格中显示的文档大纲中。
答案2
选项 1 替换格式
使用宏
以下宏将标题从一种样式更改为另一种样式
Sub FindAndReplaceStyle()
Dim intI As Integer
Dim newStyle As String
For intI = 1 To ActiveDocument.Paragraphs.Count
curStyle = ActiveDocument.Paragraphs(intI).Style
If curStyle = "AxureHeading1" Then
Call SetStyle(intI, wdStyleHeading1)
ElseIf curStyle = "AxureHeading2" Then
Call SetStyle(intI, wdStyleHeading2)
ElseIf curStyle = "AxureHeading3" Then
Call SetStyle(intI, wdStyleHeading3)
End If
Next intI
为了减少代码重复并提高可读性,一个小的辅助函数
Sub SetStyle(intI, newStyle)
Dim ranActRange As Range
Set ranActRange = ActiveDocument.Paragraphs(intI).Range
With ranActRange
ranActRange.Style = newStyle
End With
End Sub
使用搜索替换对话框
在此我发现使用 inbuild 搜索替换功能(CTRL +H)您可以选择搜索格式。我还没有在我的文档上测试过,但看起来很有希望。
选项 2 更改大纲级别
作为帕特里克建议你可以将大纲级别从正文更改为其他级别。由于我对 Patrick 答案的编辑被拒绝,因此我在此答案中附上了屏幕截图。
打开修改样式对话框
选择段落作为您想要更改的格式对象
选择大纲级别
答案3
最简单的方法是让你的顶级标题基于标题 1在New Style
(或Modify
)对话框中。
只要您的自定义标题从顶层级联,它们就会显示在导航窗格中。