词字段 "Syntax Error"

Word Field "Syntax Error"

在 word 文件中,如果有一个如下所示的字段:

{ = { IF "${COSTS}" = "" 0 "${COSTS}" } \# "#.0000" }

-> 这给我一个语法错误!

但是以下工作正常:

{ = { IF "100" = "" 0 "100" } \# "#.0000" }

P.S: ${COSTS}是一个占位符,由软件工具自动替换。

我可以在这里做什么?

我最好的猜测是替换代码的软件在处理空格时遇到了问题。不要将#{COSTS} 放在引号中,而是尝试使用百分号?批量工作。你应该把你用什么软件替换问题中的代码。

documentation 描述的 IF 字段的语法是

{ IF Expression1 Operator Expression2 TrueText FalseText }

在您的第一个示例中,字段值将是文本 ${COSTS},而不是数字。

根据documentation,外部公式字段的语法是

{ = Formula [Bookmark ] [\#Numeric Picture ] }

重要的部分是关于公式的部分(我突出显示):

A formula is an expression that can contain any combination of numbers, bookmarks that refer to numbers, fields resulting in numbers, and the available operators and functions. The expression can refer to values in a table and values returned by functions.

在您的第一个示例中,内部字段不产生数字,因此出现语法错误。

解决方案是让内部字段 return 有一个数字。根据这个数字的来源,这可能例如使用书签实现。