更新&从邮件合并中取消链接Word Doc中的特定合并字段 - Excel VBA

时间:2018-05-04 21:05:53

标签: excel-vba word-vba mailmerge vba excel

交叉发布(原创):http://www.msofficeforums.com/excel-programming/38959-update-unlink-specific-merge-field-word-doc.html

嘿所有,

目前,我有一些代码可以运行从Excel工作簿到Word文档的邮件合并。该代码还会选择Word Doc中的所有内容,更新字段,然后将其与邮件合并取消链接。

代码:

strWorkbookName = ThisWorkbook.Path & "\" & ThisWorkbook.Name
Worksheets("Data").Activate

'Opens New Plan Doc Template
Set appWD = CreateObject("Word.Application")
appWD.Visible = True

appWD.Documents.Open Filename:=PlanDocTemplate

ActiveDocument.MailMerge.OpenDataSource Name:=strWorkbookName, _
Format:=wdMergeInfoFromExcelDDE, _
ConfirmConversions:=True, _
ReadOnly:=False, _
LinkToSource:=True, _
AddToRecentFiles:=False, _
PasswordDocument:="", _
PasswordTemplate:="", _
Revert:=False, _
Connection:="Entire Spreadsheet", _
SQLStatement:="SELECT * FROM `Data$`", _
SQLStatement1:="", _
SubType:=wdMergeSubTypeOther

appWD.Visible = True

appWD.Selection.WholeStory
appWD.Selection.Fields.Update
appWD.Selection.Fields.Unlink
'New Code Here to update & unlink <<footer>> merge field
ActiveDocument.MailMerge.MainDocumentType = wdNotAMergeDocument
appWD.ActiveDocument.Save

这对于现在很有用,但是单词doc的页脚也有一个合并字段“footer”,它不会通过代码appWD.Selection.WholeStory(因为它位于页脚中)被选中。我想象有一种方法可以选择整个页脚和appWD.Selection.Fields.Update&amp; .Unlink但是那会捕获底部的自动页码并保持静态,这是我不想要的。 I.E.底部的每个页码都是Page 1,Page 1,Page 1 ......

有没有办法让Excel VBA更新和取消链接单个合并字段“页脚”?

谢谢大家, 富

0 个答案:

没有答案