微软的Word VBA从Excel中插入页脚

问题描述 投票:2回答:2

我试图从Excel(VBA)在Word文档中插入页脚。我想页脚是这样的:

Footer Left Right Footer: CustomText Page 1 of 5

下面是写在Excel中的VBA代码:

Sub FooterTextwithpageNum()
    Dim wb As Workbook
    Dim objWord As Object
    Dim FooterTemp As Object

    Set objWord = GetObject(, "Word.Application")
    objWord.Visible = True
    Set FooterTemp = objWord.ActiveDocument 

    FooterTemp.Sections(1).Footers(1).Range.Text = "This is Custom Text"

    FooterTemp.Sections(1).Footers(1).PageNumbers.Add FirstPage:=True
End Sub

代码后我执行如下得到的结果:

Footer Left Right Footer: This is Custom Text 1

而不是让页码为Y的第X页它只是数字1,2等任何人都可以请帮我在得到页码为Y的第X页?像下面的图像:

enter image description here

vba ms-word word-vba footer
2个回答
0
投票

请看看这个链接:How Can I Add a Page X of Y Footer to a Microsoft Word Document?

我没有看它足以弄清楚如何添加自定义文本以及但是下面的代码适用于您的子从链接,并插入Y的第X页

Sub FooterTextwithpageNum()

    Dim wb As Workbook
    Dim objWord As Object
    Dim objDoc As Object
    Dim FooterTemp As Object
    Dim objTemplate As Object
    Dim objRange As Object

    Set objWord = GetObject("", "Word.Application")
    objWord.Visible = True
    Set objDoc = objWord.Documents.Add()
    Set FooterTemp = objWord.ActiveDocument

    Set objTemplate = objDoc.AttachedTemplate
    Set objRange = FooterTemp.Sections(1).Footers(1).Range

    objTemplate.AutoTextEntries("Page X of Y").Insert objRange

End Sub

0
投票

这是我如何得到它使用Word内置的制表位工作:.InsertAfter vbTab

把它两次,有左,右页脚。

整个Excel VBA页脚代码:

    ' FOOTER
    With wrdDoc.sections(1).Footers(wdHeaderFooterPrimary).Range
        .InsertAfter Text:="Printed: "
        .Fields.Add .Characters.Last, wdFieldEmpty, "DATE \@ ""MM/DD//YYYY""", False
        .InsertAfter vbTab
        .InsertAfter vbTab
        .InsertAfter Text:="Page "
        .Fields.Add Range:=.Characters.Last, Type:=wdFieldEmpty, Text:="PAGE", PreserveFormatting:=False
        .InsertAfter Text:=" of "
        .Fields.Add Range:=.Characters.Last, Type:=wdFieldEmpty, Text:="NUMPAGES", PreserveFormatting:=False
    End With

结果:

enter image description here使用Office 2016(Office 365中)。

© www.soinside.com 2019 - 2024. All rights reserved.