EXCEL两数相减,差有若干位小数

如10404.5-500=9904.499999999970
这是EXCEL表格自动生成的数据中的一段。由于出现问题,在检查中把差值增加若干位小数,发现这种现象。如果把被减数改为手动录入(原被减数也是EXCEL自动生成),结果就是9904.500000000000 。这就造成两个差值自动比较不相等。
格式设置是正确的。
它不是格式或小数位数设置问题,或许是Excel 中浮点运算惹的祸吧希望高手探讨

第1个回答  2011-09-11
你生成的被减数本来就是因为设置格式为保留一位小数而形成的,实际上应该是10404.499999999970
如果你想让他只有一位小数,应该在你现有的公式的基础上加上Round(现公式,1)
第2个回答  2011-09-09
用ROUND()函数!列如:
=round(10404.5-500,2),这个问题就解决了!
第3个回答  2011-09-09
格式设置是正确的(设置为数字时,应强调几位小数)追问

减少小数位后显示是正确数,我求教的是在数百上千行数据中,为什么偶有那么些数是这样,如何消除

第4个回答  2011-09-11
用ROUND()函数!其他向下填充即可
第5个回答  2013-08-07
我也是遇到这种情况,计算结果0.457158000000007。不知道怎样解决啊。