Excel 工作表中有一个单元格(A40),其中包含一系列值的总和(公式:)=SUM(A1:A39)
。
如果总和为 0,另一个单元格应打印“OK”,如果总和不为 0,则打印“ERROR”。我有以下公式:=IF(A40=0;"OK";"ERROR")
。不幸的是,它总是打印“ERROR”。
如果重要的话,A1 到 A40 都采用“货币”格式。
这是否是另一个“永远不要将浮点数与固定值进行比较,而是使用较小的 epsilon 范围”错误?以下修复有效……=IF(AND(A40>-0,1; A40<0,1);"OK";"ERROR")
多少个零“足够”始终获得正确的“OK”或“ERROR”输出?
答案1
是的,在比较浮点数和整数时,你会遇到问题。尝试=IF(ROUND(A40;2)=0;"OK";"ERROR")
这将首先将您的总数四舍五入到小数点后两位,然后进行比较。