如何用vba删除word文档中的所有页码?

在word文档的页眉或页脚可以添加页码。

一个页眉或页脚可以添加多个页码。

在word vba 中PageNumber 对象代表一个页码。

PageNumbers集合对象代表了一个页眉或页脚中的所有页码。

要删除所有页码,可以遍历PageNumbers集合对象中的PageNumber对象,然后用PageNumber对象的Delete方法删除。

由于一个word文档中可以首页的页码与其它页的不同,也可以奇数页的页码和偶数页的页码不同,而且一个word文档还经常有很多个节,所以要遍历PageNumbers集合对象首先要遍历不同的节,然后再遍历每个节的首页和奇数页和偶数页的页眉和页脚。

根据上述知识,可以使用如下的vba代码批量删除word文档中的所有页码:

Sub QQ1722187970()
    Dim oSection As Section
    Dim oHF As HeaderFooter
    Debug.Print Word.ActiveDocument.Sections.Count
    Dim oDoc As Document
    Set oDoc = Word.ActiveDocument
    Dim oPN As PageNumber
    With oDoc
        For Each oSection In .Sections
            With oSection
                With .PageSetup
                    '首页不同
                    .DifferentFirstPageHeaderFooter = True
                    '奇偶页不同
                    .OddAndEvenPagesHeaderFooter = True
                End With
                '首页页脚
                Set oHF = .Footers(wdHeaderFooterFirstPage)
                For Each oPN In oHF.PageNumbers
                    oPN.Delete
                Next
                '奇数页页脚
                Set oHF = .Footers(wdHeaderFooterPrimary)
                For Each oPN In oHF.PageNumbers
                    oPN.Delete
                Next
                '偶数页页脚
                Set oHF = .Footers(wdHeaderFooterEvenPages)
                For Each oPN In oHF.PageNumbers
                    oPN.Delete
                Next
                '首页页眉
                Set oHF = .Headers(wdHeaderFooterFirstPage)
                For Each oPN In oHF.PageNumbers
                    oPN.Delete
                Next
                '奇数页页眉
                Set oHF = .Headers(wdHeaderFooterPrimary)
                For Each oPN In oHF.PageNumbers
                    oPN.Delete
                Next
                '偶数页页眉
                 Set oHF = .Headers(wdHeaderFooterEvenPages)
                For Each oPN In oHF.PageNumbers
                    oPN.Delete
                Next
            End With
        Next
    End With
End Sub
       

仅有1条评论 发表评论

  1. 匿名 /

    非常感谢,很有用!

发表评论