[英]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.