【发布时间】:2019-12-19 18:41:44
【问题描述】:
目前 MS Word 一次只允许插入 1 个邮件合并字段。我正在寻找一个 VBA 代码,它允许我一次将所有合并字段插入 Word 文档和/或输入一个邮件合并字段的代码,其中相同的邮件合并文本的名称出现在文档中。
对于第二种可能性,我发现以下代码允许用户一次将与邮件合并名称匹配的文本转换为邮件合并字段(http://apsona.com/blog/how-to-quickly-create-merge-fields-in-word/)。我正在处理一个包含数千个邮件合并字段的数据源,因此理想情况下,我希望一次为所有这些字段执行此操作,或者创建一个循环或类似的东西。
Sub MakeMergeField()
Selection.Copy
Selection.Fields.Add Range:=Selection.Range, Type:=wdFieldEmpty, Text:= _
"MERGEFIELD """ + Selection.Text + """, PreserveFormatting:=True"
End Sub
【问题讨论】:
-
«目前 MS Word 只允许一次插入 1 个邮件合并字段» 虽然这是真的,但没有必要在插入之间关闭合并字段对话框。与简单的字段插入宏不同,它允许您乱序插入字段,因此您不必在之后重新排列它们。