如何用vba给word文档的奇偶页设置页码?

在word排版中经常要给奇偶页设置不同的页码对齐方式,奇左偶右或者奇右偶左页码。

这时候就要设置word文档的页脚要奇偶页不同。

在vba中如果要给奇偶页添加页码,并且设置不同的对齐方式,可以使用如下的代码快速地实现:

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 = False
                End With
                Set oHF = .Footers(wdHeaderFooterPrimary)
                With oHF.PageNumbers
                    .NumberStyle = wdPageNumberStyleArabicFullWidth
'                    不续前节 '
                    .RestartNumberingAtSection = True
                    '从1开始编号
                    .StartingNumber = 1
                     Set oPN = .Add
                With oPN
                    '奇右偶左
                    .Alignment = wdAlignPageNumberOutside
                    '奇左偶右
                    .Alignment = wdAlignPageNumberInside
                End With
                End With
                With .PageSetup
                    .OddAndEvenPagesHeaderFooter = True
                End With
            End With
        Next
    End With
End Sub

以上代码通过先取消每个节的奇、偶页的不同,然后通过添加页码后设置页码的对齐方式为外侧或内侧实现奇偶页的页码的对齐方式。

       

发表评论