Excel两个单元格数值相等,使用IF函数为什么为0
技术杂记
2020-12-20
今天在项目中遇到一个问题,很奇怪。是这样的,一个单元格和另一个单元格比较是否相等,其中一个单元格是使用SUM求和的数据,手动求和和另外一个单元格是相等的,但是使用IF函数却不相等。
经过查阅相关资料了解到,原来Excel中的浮点运算结果可能并不准确,具体参考这里 。既然是浮点运算导致的精度问题,那就使用ROUND函数四舍五入取固定精度即可解决。
假设原来的公式为:
=IF(A1=SUM(B2,C2),1,0)
那么改为
=IF(A1=ROUND(SUM(B2,C2),2),1,0)
至于精度设置为多少,要看实际需求。