EXCEL 设置公式表示当A1-B1小于0.1时记作0,A1-B1大于等于0.1时。记作A1-B1的差。但是当A1-B1=0.1老出错

设置的公式是=IF(A1-B1<0.1,0,A1-B1),这个公式有问题么,为什么计算的结果当A1-B1等于0.1时,有时记作0有时记作0.1?

你这个公式设置的意思 如果是小于0.1,那么显示0,否则就返回A1-B1的值 ,如果A1=B1那么返回的结果当然是0追问

不是A1=B1,比如A1=49.56 B1=49.46 用这个公式就是0了。我设置这个公式是想让这种情况显示为0.1的实际差

追答

round 返回按指定位数进行四舍五入的数值。(round(a1-b1,3)是计算A1-B1的值并保留3位小数

温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-02-25
这个公式本身没有问题,是excel的浮点运算出的问题吧
建议改成
=if(round(a1-b1,3)<0.100,0,a1-b1)
看看追问

这个round是什么意思呢。0.100是干什么用的呢。我这里计算的一般都是小数点后两位。
能帮忙解释一下你这个公式的含义么。谢谢了。这个3也不明白什么意思。。。
你这个公式试了下。确实不会出现我那个公式的情况了。就是不明白含义。请赐教一下。谢谢了

第2个回答  2012-03-08
你公式的意思是a-b<0成立,就输出0,如果不成立,则输出a-b的值。
应该是=if(A1-B1>=0.1,A1-B1,0)
第3个回答  2012-02-25
我试过,没有问题,不知道你的设置如何
相似回答