![从文档更新邮件合并源数据](https://linux22.com/image/1394922/%E4%BB%8E%E6%96%87%E6%A1%A3%E6%9B%B4%E6%96%B0%E9%82%AE%E4%BB%B6%E5%90%88%E5%B9%B6%E6%BA%90%E6%95%B0%E6%8D%AE.png)
是否可以从 Word 更新邮件合并源数据?例如,如果我在文档中设置了“版本”字段,是否可以在 Word 中更新它并将其传播回数据源?
如果不使用合并标签,还有其他方法可以完成吗?
答案1
Word 的 MailMerge 实际上是只读过程,因此没有简单的机制来执行您所建议的操作。(对于某些类型的数据源,有时可以使用“编辑收件人”功能通过用户界面编辑数据源,但这实际上几乎就像一个独立的编辑器)。
因此,如果您需要能够做到这一点,通常需要做的是使用 VBA(或其他任何方式)独立打开和更新数据源。如何做到这一点取决于数据源 - 例如,打开和更新 Word 数据源需要 Word Automation(或直接操作 .docx),而更新 SQL Server 源则需要 ADO。然后,您还必须考虑在 MailMerge 数据源打开时是否有可能打开和修改数据源。
最后,如果您需要在合并时更新每个数据源记录,您可以考虑使用 Word 对象模型中的 VBA MailMerge 事件。(Mac Word 上不可用!)