簡體   English   中英

使用 Excel VBA 宏在 Word 中查找和替換頁腳文本

[英]Find and Replace footer text in Word with an Excel VBA Macro

我正在嘗試在Excel 中創建一個,它打開一個Word文檔,找到一個特定文本,它位於 word doc 的頁腳內,並將其替換為文本。

目前,我的宏打開了 doc 這個詞,但我不知道如何進入頁腳並找到這些文本。

    Dim objWord
    Dim objDoc
    Set objWord = CreateObject("Word.Application")
    Set objDoc = objWord.Documents.Open(ThisWorkbook.Path & "/NotaPromissoriaAutomatica.docx")
    objWord.Visible = True

頁腳有兩個文本必須替換

1 - VAR_CIDADE > 哪個將替換當前城市(在我的 excel 表的 A1 中)
2 - VAR_DATA > 哪個將替換當前日期(在我的 excel 表的 A2 中)

我創建了一個帶有單頁、頁眉和頁腳的測試文檔,頁腳使用關鍵字“VAR_DATA”。 下面的示例代碼將搜索文檔中的所有頁腳並進行替換。 請注意,代碼Section(1)搜索。 如果您有更多節,則可能需要創建一個外循環來搜索每個節中的每個頁腳。

Option Explicit

Public Sub FixMyFooter()
    Dim myWord As Object
    Dim myDoc As Word.Document
    Set myWord = CreateObject("Word.Application")
    Set myDoc = myWord.Documents.Open("C:\Temp\footertest.docx")

    Dim footr As Word.HeaderFooter
    For Each footr In myDoc.Sections(1).Footers
        With footr.Range.Find
            .Text = "VAR_DATA"
            .Replacement.Text = Format(Now(), "dd-mmm-yyyy")
            .Execute Replace:=wdReplaceAll, Forward:=True, Wrap:=wdFindStop
        End With
    Next footr

    myDoc.Save
    myWord.Quit
End Sub

您需要擴展示例以找到具有您自己的格式的附加文本。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM