Syntax 邮件合并计算不正确。

Syntax 邮件合并计算不正确。,syntax,mailmerge,calculated-field,Syntax,Mailmerge,Calculated Field,我正在努力计算我在工作中创造的合法形式的利率。为了获得该利率,您需要采用当前余额X法定利率X 0.01/365。这是我目前写的,计算不正确 {={Principal}-{Paid}*{InterestRate}*0.01/365} 当我按“原样”运行mergefield时,在我们的测试账户上,本金余额为5000,已支付余额为0.00,利率为10%(10.00),结果是=5000,而不是1.36 我搜索了论坛、微软的支持网站和stackoverflow,只找到了关于允许哪些运算符的信息以及加法、

我正在努力计算我在工作中创造的合法形式的利率。为了获得该利率,您需要采用当前余额X法定利率X 0.01/365。这是我目前写的,计算不正确

{={Principal}-{Paid}*{InterestRate}*0.01/365}
当我按“原样”运行mergefield时,在我们的测试账户上,本金余额为5000,已支付余额为0.00,利率为10%(10.00),结果是=5000,而不是1.36


我搜索了论坛、微软的支持网站和stackoverflow,只找到了关于允许哪些运算符的信息以及加法、减法和除法的基本语法示例。没有显示这些的组合。你能帮我看看我的语法哪里不正确吗?

这需要处理操作顺序。在本例中,首先执行{Paid}*{InterestRate}*0.01/365}(乘法/除法),然后执行减法

只需在{Principal}-{Paid}周围添加paren,它就可以工作了


{={Principal}-{Paid}*{InterestRate}*0.01/365}

如果Windows控制面板(或Mac系统首选项)中的区域设置使用英镑而不是美元作为货币符号,则会出现语法错误。为了避免这种情况,你可以尝试类似的方法

{ SET myPrincipal { MERGEFIELD Principal } 
}{ SET myPaid { MERGEFIELD Paid } 
}{ SET myInterestRate { MERGEFIELD InterestRate } 
}{ =(myPrincipal-myPaid) * myInterestRate * 0.01 /365 }

如果您使用的是混合货币,则最终可能会显示一个与控制面板设置匹配的货币符号,以及一个与控制面板设置不匹配的普通数字。在{=}的末尾添加\#0.00可能会解决这个问题。

我刚刚用括号再次运行了它,这次它给了我一个语法错误。还有其他建议吗?你能粘贴准确的错误信息吗?请注意,我认为复制/粘贴不会生成有效的公式。字段1返回的值为:$5000.00,字段2返回的值为:$0.00。合并字段试图从字段2减去字段1,我认为这会导致错误,因为它可能是字符串?如果是这样的话,有没有办法将字段1和字段2转换成十进制并减去它们?谢谢你的帮助,提醒我我的操作顺序。我发现问题不仅仅是这个。我使用的合并数据是varchar而不是整数。当我将合并数据转换为整数时,它起作用了。不过,我会将您的答案标记为已接受的答案,因为如果我首先将合并数据作为整数,那么我唯一的问题就是操作顺序。再次感谢。在阅读并思考了您的答案之后,我认为语法错误可能是由我正在合并的数据造成的。前两个是varchar的,另一个是整数。所以我把我的合并数据转换成了整数,它成功了。感谢你激发了这种想法。非常感谢你这么做,几个月来我一直在琢磨为什么完全相同的单词计算在一台计算机上有效,而不是在另一台计算机上——一台被设置为错误的区域设置!