选项 2 更改大纲级别

选项 2 更改大纲级别

我有一个 Word2010 文档,它是通过艾克斯

  • 每个标题都采用自定义样式进行格式化(“AxureHeading1”,“AxureHeading2”,“AxureHeading3”)。
  • 我以前可以使用自定义标题创建目录References tab, click Table of Contents, click Insert Table of Contents, and then click Options. Under Available styles
  • 但我不知道该怎么做才能将这些自定义标题包含在导航窗格中

我可以做什么

  1. 使用 Word 中的内置标题更改每个自定义标题(级别 1、2、3),而无需手动单击并选择每个标题(VBA 宏?)
  2. 或调整自定义标题样式,使其显示在导航窗格中

显示内置标题的导航窗格图像 Word 2010 中的导航窗格

更新

看来我的宏方法有效(选项 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

最简单的方法是让你的顶级标题基于标题 1New Style(或Modify)对话框中。

只要您的自定义标题从顶层级联,它们就会显示在导航窗格中。

相关内容