2012-12-12 87 views
0

我现在有这个:如何比较两个MERGEFIELD值?

{if {MERGEFIELD M1}> {MERGEFIELD M2}“Thank you!” “Nope”}

但它不起作用。它只会这样工作:{ MERGEFIELD M1} > 3

是否可以比较两个MERGEFIELD值?

回答

0

您必须锁定MERGEFIELD,以便在重新计算IF字段时不会重新计算它们。当重新计算IF字段时,MS Word将自动重新计算MERGEFIELD到«M1»和«M2»,所以自然,IF字段不会有正确的结果。 要锁定一个字段,请选择它并按CTRL + F11。要解除锁定,请选择它并按CTRL + SHIFT + F11。有关更多信息,请参见Control how MS Word fields are updated

我相信MS Word的邮件合并在锁定的合并字段上不起作用。 作为一种替代方法,您可以通过编程实现mail merge from .NET,并使其在其他嵌套字段(如您的示例中的IF)和锁定字段中工作。

0

在“实例的IF域” http://office.microsoft.com/en-us/word-help/examples-of-if-fields-HP005187676.aspx给出一个例子覆盖你想要什么:

下面是如何通过与其他领域的演唱会使用 他们修改IF域代码一些例子代码: - 将数据字段与另一个数据字段或书签进行比较 此IF字段比较费率数据字段中的数字与折扣数据字段中的 中的数字。如果数字相同,则打印指定的文本 。

{{IF MERGEFIELD率} = {MERGEFIELD折扣}“我们将为您 提供更大的优惠。”“”}

(如果汇率数据字段数量不等于在 折扣数字段中,没有文字被打印出来。)

我还没有测试过它,但是它可能是你比较的两个字段的内容有细微差别吗?您从哪种类型的数据源提取数据?我不太确定Word是否将值视为值,如果数据未正确裁剪;在价值的开始或结束时考虑空白字符 - 你看看它,但你看不到它。为什么不用“[{MERGEFIELD A1}] [{MERGEFIELD A2}]”将数据输出到测试文档中,以便检查修剪?