我只有基本的VBA的遭遇和我之前宏执政经验,主要是用Word 2003中录制宏的使用采取GoToFooter(或编辑页脚)菜单命令,并允许后续的编辑。在WORD 2010中,这个(和许多其他)命令不会“记录”到宏中(但在记录模式下,我确实进入了编辑页脚功能)。Word 2010中宏编辑页眉和页脚
的各种VBS选项的研究表明多种方法来创建页脚,并使宏观内全球页脚设置的变化。但是,如果我只是想在页脚内修改公司名称(例如),我无法在宏子程序中执行此操作。
这个子程序是一个我将从Main Macro中调用的文件夹(&子文件夹)中的每个文件。我有主要的宏功能。
不Word 2010中宏VBA预先排除简单的编辑页脚功能?
在此先感谢
所以,感谢Issun,这里是我的解决方案:
`
Sub Sub_FTR_0()
'
ActiveDocument.ActiveWindow.ActivePane.View.SeekView = wdSeekCurrentPageFooter
For i = 1 To ActiveDocument.Sections.Count
'REM: INSERT Code from RECORD MACRO recorded when editing one Footer correctly
Selection. [[xxx]], etc.
If i = ActiveDocument.Sections.Count Then GoTo Line1
ActiveDocument.ActiveWindow.ActivePane.View.NextHeaderFooter
Line1:
Next
ActiveWindow.ActivePane.View.SeekView = wdSeekMainDocument
End Sub
`
谢谢! 我曾经看过这种语法,并假设它基本上完全用“FUBAR”材料[:)]代替了页眉和页脚...仍然不允许我选择和修改页脚的脚本(比如替换前3个单词或最后一个单词等)。 因此,每个文件都有一个唯一的页面编号方案(不是字段编码),所以完全替换不是我已经设想过的解决方法。 – Dan
谢谢(再次)。您提出的建议和提供的链接的组合使我找到了解决办法。这里是“简单”例程,允许我进入页脚和编辑部分。 子Sub_FTR_0() ' ' Sub_FTR_0宏 ActiveDocument.ActiveWindow.ActivePane.View.SeekView = wdSeekCurrentPageFooter 对于i = 1到ActiveDocument.Sections.Count “(REM)地址:FOOTER EDIT选择[CMDS] 若i = ActiveDocument.Sections.Count然后转到线路1 ActiveDocument.ActiveWindow.ActivePane.View.NextHeaderFooter 线路1: 接着 ActiveWindow.ActivePane.View.SeekView = wdSeekMainDocument 结束子 – Dan
'code' 子Sub_FTR_0() ' 活动Document.ActiveWindow.ActivePane.View.SeekView = wdSeekCurrentPageFooter 对于i = 1至ActiveDocument.Sections.Count “(REM)地址:FOOTER EDIT选择[CMDS] 若i = ActiveDocument.Sections。计数然后转到线路1 ActiveDocument.ActiveWindow.ActivePane.View.NextHeaderFooter 线路1: 接着 ActiveWindow.ActivePane.View.SeekView = wdSeekMainDocument 结束子 'code' – Dan