我想替换word doc的页脚中的文本。有些文档可能只有主页眉和页脚,有些文档有页眉和页脚。
这是我的代码:
Sub changedate()
Selection.HomeKey Unit:=wdStory
ActiveWindow.ActivePane.View.SeekView = wdSeekCurrentPageFooter
Check1:
With Selection.Find
.Text = "Dec 01, 2015"
.Replacement.Text = "Dec 01, 2015"
.Forward = True
.Wrap = wdFindAsk
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute Replace:=wdReplaceAll
ActiveWindow.ActivePane.View.NextHeaderFooter
On Error GoTo Cont
GoTo Check1
Cont:
ActiveWindow.ActivePane.View.SeekView = wdSeekMainDocument
End Sub
在多个页脚文档上,它可以正常工作,但如果只有一个页脚可用,则显示错误。
答案 0 :(得分:0)
您需要在代码中移动On Error
一行。否则,当您查找下一个页脚时,找不到任何页脚,并且在代码读取有关如何处理错误的行之前发生错误。
修改:您还可以执行For Each wdPrimaryFooterStory in ActiveDocument.StoryRanges
(不确定确切的语法,但这应该有所帮助:http://word.mvps.org/faqs/customization/ReplaceAnywhere.htm