Word中的邮件合并不会移动到下一个字段和输入值

时间:2015-11-12 15:43:51

标签: mailmerge word-2013

我正在使用Word 2013运行邮件合并。 我有一个列表,上面有3个项目[图。 3],我有一个我写过的模板。 该模板具有一些基本格式,并显示行项目(每行1个),其中包含计算的总运费(运费),税前总计,增值税总额和总计在下面的单独行中。要进入下一个订单项,我正在使用NEXT记录规则。每个订单项都显示在自己的行上,但除非我手动更新字段,否则不会填充总运费,税前总计和总计不会填写[图。 1]。我玩过NEXTIF规则,我可以自动更新这些字段,但是我在项目表中有5行,其他行填充第一条记录[图。 2]。任何人都能指出我在正确的方向吗?最终目标是在表格中包含1到5个记录/行项目,并在mailmerge期间填充底部字段。

NEXTIF规则的填充方式如下:{ NEXTIF { MERGEFIELD "Product_Product_ID" } = "True" }

谢天谢地

使用NEXT填充表格的屏幕截图: enter image description here

使用NEXTIF填充表格的屏幕截图: enter image description here

数据表的屏幕截图: enter image description here

1 个答案:

答案 0 :(得分:0)

我正在使用Windows Word 2010进行测试。其他版本(特别是在Mac上)可能会有不同的行为,因此请告诉我们您使用的是哪个版本。

以前,我假设您正在进行一次合并(包含多个页面的数据,但每页最多5行)。现在我再次阅读你的文本,我意识到你的数据源可能确实最多有5行,并且你正在寻找一种方法来检测行的不存在。假设是这样,那么......

您正在“完成合并”,即输出到新文档或其他任何内容,这一点很重要。预览合并只会告诉您将要发生的事情,有时可能会产生误导。

要测试不存在,您应该能够测试

{ IF  { MERGEFIELD Product_ID } = "" }
正如我在之前的评论中指出的那样。虽然有时候在预览期间不会显示预期结果,但在完成合并时它应显示预期结果。 (它可能只需要在预览期间正确显示字段更新。

我怀疑与不显示总计相关的问题与计算方式有关。如果您正在使用运行总计而不检查每行中是否存在值,则可能会出错。你显然与我不同,因为我实际上在我的总数中看到了一条错误消息:

!Unexpected end of formula.

如果我在页面开头有以下内容,那就是这样做

{ SET Total 0 }

以及每行中的以下计算

{ SET Total { =Total+{ MERGEFIELD Extended_Amount } } }

要解决这个问题,我认为你需要做一些像

这样的事情
{ SET Total { =Total+{ IF { MERGEFIELD Extended_Amount } = "" 0 { MERGEFIELD Extended_Amount } } } }

然而,另一个用于该计算的方法可以使用完全不同的方法 - 选择表格,插入书签,让我们说“datatable”,然后使用像

这样的字段
{ =SUM(datatable [F:F]) }

或者如果要在输出文档中解析字段代码,请使用

{ QUOTE { =SUM(datatable [F:F]) } }

如果 进行一次合并(数据源中超过5条记录),那么{NEXT}字段方法将无效。我可以详细说明你需要做什么,但大纲是你必须有一些东西告诉你何时页面的数据结束,并使用它来抑制不应该存在的行的输出。 (有些人可能认为更简单的替代方法可能是在每个页面的第一行中有一个行计数,并且有一个IF块,根据行count_插入正确数量的表行+内容。