【问题标题】:Copy and Paste Field Codes into Word将域代码复制并粘贴到 Word 中
【发布时间】:2017-12-28 22:06:37
【问题描述】:

我需要根据外部数据源(数据库中的信息)将一些相当复杂的邮件合并字段插入 Word。我不想手动执行此操作,而是以编程方式执行此操作。

我在如何做到这一点方面受到相当的限制。我不能使用VB。我可以运行一个脚本来从其他数据源收集信息,并将信息作为邮件合并代码作为原始文本输出。然后我希望能够简单地获取该文本并将其复制并粘贴到 Word 文档中,并让 Word 将其识别为合并字段。

例如,我希望能够使用我的脚本生成以下原始文本:

{ MERGEFIELD "Price" } 

然后将其粘贴到 Word 中。但是,Word 不会将其识别为邮件合并字段,而是将其识别为常规文本。这样做有诀窍吗?请注意,我可以修改我的脚本以输出不同格式的文本。

【问题讨论】:

  • 如果您传递了此文本,Word 如何将其作为字段响应?当您使用邮件合并词插入字段时,不是文本! Word 是一个程序,它无法分析您的输入!如果需要字段,则必须插入字段,如果需要文本,则必须插入文本。
  • 请修改您的问题,以多说一些关于您工作环境的信息。例如您使用的是 Mac 还是 Windows?如果是这样,可以用其他方式编写 Word 脚本(例如,在 Windows 上使用 COM 自动化或在 Mac 上使用 Applescript)。你的脚本环境支持吗?动态插入字段编码的另一种方法是直接使用 Word 文档的 XML“源代码”,或者使用 docx 的组件文件,或者将文档保存为 FLat OPC (.xml) 文件和根据需要替换其中的代码。

标签: ms-word mailmerge


【解决方案1】:

有人会像我一样偶然发现这个问题并需要答案。

答案是您可以将文本输入为MAILMERGE field_label,然后突出显示,然后输入 ALT+F9。这将创建一个字段,我特别相信 MAILMERGE 字段。但这需要时间,您不能真正复制粘贴字段。

所以,完整的答案是转到Windows Secrets 并将必要的宏添加到您的系统宏中。这将允许您复制粘贴您的文本字段,然后使用这些字段突出显示文本,然后再使用您的宏将它们全部更新为字段。

【讨论】:

  • 射击,我不应该在这个一次性的东西上使用那个标签。如果我想要它回来,请将其添加到我的主帐户中。
  • 我相信插入新域代码是Ctrl-F9,而不是Alt-F9。 Alt-F9 在文档显示和查看域代码之间切换。
猜你喜欢
  • 1970-01-01
  • 2015-05-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多