我正在尝试在Excel中创建一个宏来打开一个Word文档,找到一个especify文本,这是在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
您需要展开示例以使用自己的格式查找其他文本。