替换word文档中的所有标题样式

时间:2013-10-16 13:51:46

标签: vba ms-word word-vba

我有一些自定义标题样式的word文档。

我想遍历文档中的所有自定义标题,并使用标准标题样式替换自定义样式。

例如:

Custom Style                Standard Style
===================         ==============
Heading 1. Numbered   -->   Heading 1
Heading 2. Numbered   -->   Heading 2
Heading 3. Numbered   -->   Heading 3

依此类推至标题5 ......

我正在使用MS Word 2007。

问题:如何使用VBA执行此操作?

1 个答案:

答案 0 :(得分:0)

这对我有用:

Sub Macro1()

    Dim DocPara As Paragraph

    For Each DocPara In Application.ActiveDocument.Paragraphs
        If DocPara.Range.Style Is Nothing Then
            ' do nothing
        Else
            Dim I As Integer
            Dim H As String
            For I = 1 To 5
                H = "Heading " + CStr(I) + ". Numbered"
                If Left(DocPara.Range.Style, Len(H)) = H Then
                    DocPara.Range.Style = "Heading " + CStr(I)
                End If
            Next I
        End If
    Next

End Sub

代码改编自: https://stackoverflow.com/a/276397/1033422