使用一个 Word 文档进行邮件合并,但需要多次迭代,具体取决于 Excel 数据

Mail Merge using one Word doc but needing many iterations depending on Excel data

这是今天更新的 post,因为参数发生了变化。

我有一个 Excel sheet 的数据。我有一个 Word 文档,指示我根据 Excel 中的数据选择要使用的段落。例如,如果 Excel 中的 NewClient 列有一个 X,那么我会为这封信选择第 2 段。如果它是空白的,我选择第 1 段。如果它有 Y,那么我选择第 3 段。我在本文档中有几个实例,我可以从中选择三件事。有没有办法通过邮件合并来做到这一点?我已经减少到添加列并用各个段落填充它们。 "works" 但这不是我的老板想要的解决方案。他们认为我们可以以某种方式使用字段和 if...then...else 来使这个 Word 文档在每个实例中都神奇地生成。

为什么不对Excel中的列表进行排序,然后制作两个列表。一个是有 x 的人,一个是没有 x 的人。然后您可以在 Word 中为每个列表进行邮件合并。

在邮件合并中有条件地改变文本是一项微不足道的编程任务 - 全部通过字段编码完成。例如:

{IF{MERGEFIELD NewClient}= "X" "NewClient Text for X"}{IF{MERGEFIELD NewClient}= "Y" "NewClient Text for Y"}{IF{MERGEFIELD NewClient}= "" "NewClient Text for blank"}

注意: 上述示例的字段大括号对(即“{ }”)都是在文档本身中创建的,通过 Ctrl-F9(Cmd-F9 在Mac 或者,如果您使用的是笔记本电脑,则可能需要使用 Ctrl-Fn-F9);您不能简单地键入它们或从该消息中复制并粘贴它们。通过任何标准的 Word 对话框添加它们也不切实际。字段结构中表示的空间都是必需的。如果需要,条件输出可以包括多个段落、表格和图像。