Ms word “中的Word邮件合并错误”;“按类别分类”;

Ms word “中的Word邮件合并错误”;“按类别分类”;,ms-word,docx-mailmerge,fieldcodes,Ms Word,Docx Mailmerge,Fieldcodes,请参阅邮件合并问题的附件。我期望的结果应该是: 但事实证明: 我相信错误是由字段代码(即)中的比较引起的,但我无法确定错误在哪里。如果我更改数据 1A-->F1A 或 1A-->A1 错误消失了。以下是字段代码: 提前谢谢你的帮助 您需要在{Place2}和{Place1}周围加上双引号,例如 "{ Place2 }" 事实上,当word进行比较时,它会将1A、2D等值计算为数字1、2等。由于列表以1A、1C开头,比较将是{IF 1},因此将错过从1A到1C的转换 如

请参阅邮件合并问题的附件。我期望的结果应该是:

但事实证明:

我相信错误是由字段代码(即)中的比较引起的,但我无法确定错误在哪里。如果我更改数据

1A-->F1A1A-->A1

错误消失了。以下是字段代码


提前谢谢你的帮助

您需要在
{Place2}
{Place1}
周围加上双引号,例如

"{ Place2 }"
事实上,当word进行比较时,它会将1A、2D等值计算为数字1、2等。由于列表以1A、1C开头,比较将是
{IF 1}
,因此将错过从1A到1C的转换

如果您想确保Word进行文本比较,这是一个原因。事实上,在这个场景中,Word将看起来像简单算术表达式的东西视为简单的算术表达式,因此,如果Place1被称为
“2*4”
,而Place2被称为
“8”
,那么如果不包含引号,您将得到一个匹配项

当您希望将比较符作为文本处理时,建议在IF字段中引用比较符还有其他原因。例如,如果您有以下内容,X肯定是
“abc”
,Y肯定是
“def”

但这将返回“相等”

而这将返回“不相等”


换句话说,如果比较符未被引用,且计算结果与文档中书签的名称相同,则它将被视为对书签值的引用,并被取消引用。

感谢您的详细解释!
{ SET X "abc" }{ SET abc "def" }{ SET Y "def" }{ X }{ Y }
{ IF { X } = { Y } "equal" "not equal" }
{ IF "{ X }" = "{ Y }" "equal" "not equal" }