小伙伴们好啊,今天咱们说说IF函数使用过程中的一些常见的问题,看看你有没有掉坑里。 1)多次比较
这个错误是因为你没理解函数的判断机制,多次比较下是分步进行的:第1次比较,1<2,结果为TRUE。第2次比较,TRUE<3,由于Excel里逻辑值是大于任何数值的,所以结果为FALSE。 故多个比较的话请配合AND或者OR函数,正确写法为: ![](http://image109.360doc.com/DownloadImg/2020/08/1809/199592924_2_20200818092415490)
2)文本数字 ![](http://image109.360doc.com/DownloadImg/2020/08/1809/199592924_3_20200818092415521)
这个公式的结果错误,是因为错误使用了文本型数字,而对Excel来说,文本的比较和数值比较规则是不一样的。 下面这个公式,是日期部分的书写方法不正确了:
通常添加VALUE函数或者使用两个负号等方法,把文本型数字转化为真数值才能正确比较。
![](http://image109.360doc.com/DownloadImg/2020/08/1809/199592924_5_20200818092415568)
![](http://image109.360doc.com/DownloadImg/2020/08/1809/199592924_6_20200818092415599) 很多人并不是一开始就使用Excel的,可能是小白,也可能是各种程序猿,所以很多时候你在群里能看到各种不按Excel的套路而脑洞大开的写法。=IF(1<2 AND 2<3,'正确','错误')=IF((1<2)&(2<3),'正确','错误')(只有你想不到的,没有写不出来的,完全不按Excel的套路出牌 )Excel群有一句话:没什么函数问题是64层IF解决不了的,如果有,请加定义名称。这种方法本身并不算错误,但有个笑话很多人应该听过,学了”一二三”就把老师赶走,自己开始写“万”字,写了一天写了500多画……所以在群里你经常能看到一个巨长的公式,本质就是大量的IF套嵌,这种写法本身是没有错误的,但是假设条件变化,公式会很难维护。![](http://image109.360doc.com/DownloadImg/2020/08/1809/199592924_8_20200818092415677) 这也是我们深入学习函数的原因之一,通常都会推荐使用LOOKUP/VLOOKUP等函数,根据规则来简化IF套嵌公式。![](http://image109.360doc.com/DownloadImg/2020/08/1809/199592924_9_20200818092415786) 群里偶尔会有小白在群里求了公式后结果异常来询问,类似截图效果,很多所谓的高手都答不上来。其实很简单,这个小白操作有误,在编辑栏内实际粘贴了两次公式 。![](http://pubimage.360doc.com/wz/default.gif) 所以出现这种情况的时候请记得拉宽你的编辑栏(一般这种错误的公式结果是逻辑值,所以结果不应该出现逻辑值的公式可以考虑下这种情况)如果你自认为真的熟悉IF,请在不测试的前提下回答以下几个IF公式的结果 :
|