所以我有一张excel表,如下所示:(我已经取出所有相关信息)
列D
是一个已被拖动到所有单元格的公式(更改行号):
=IF(A2 = "",$D1-C2,A2 - C2)
如果您看到单元格D6
,您会发现它有某种错误。我已经包含了两个例子。表的下半部分使用相同的公式正常工作。第一部分不起作用,我假设它因为0.985,它似乎只发生在0.9以上但低于1.
是否有人能够帮助找出问题所在?
答案 0 :(得分:2)
看起来像浮点数上的舍入错误(有关详细信息,请参阅IEEE floating point)。您可以在特定小数位数上使用round
来解决此问题,例如:
如果你需要的话,round(D6, 3)
会将D6舍入到小数点后3位以获得更好的精确度。
答案 1 :(得分:1)
这不是错误,它是科学记数法。它显示的值是3.33*10^(-16)
,或0.00000000000000333067(希望我算得那么正确)。
这基本上是一个舍入错误。如果您希望列对于接近零的值显示零,则将列格式化为具有有限小数位数的数字。