1. 首页 > 大杂烩

excel中if函数判断多个条件和多个结果(if函数中and)

Excel不认识的数学不等式

如图所示,朋友所在的面粉厂,要求生产的面粉每袋质量不能小于495克,也不能超过500克,否则该袋面粉将被定为“不合格”产品。

excel中if函数判断多个条件和多个结果(if函数中and)

面粉是否合格,判断的标准非常简单:如果面粉质量既大于或等于495,又小于或等于500,那么定为“合格”,否则定为“不合格”。

这是评定面粉是否合格的标准,也是IF函数的“人类语言版”。

了解完这些后,让我们来看看朋友为这个问题设计的公式:

excel中if函数判断多个条件和多个结果(if函数中and)

  可是,当他将公式输入单元格后,发生了“意外”,如图3?16所示。

excel中if函数判断多个条件和多个结果(if函数中and)
excel中if函数判断多个条件和多个结果(if函数中and)

也许,你也写过这样的公式,有过这样的疑问。

事实上,Excel并没有问题,只是你写的公式不符合它的语言规则。

这就像你对着一位不会英语的中国小朋友喊“Pen”,而他却给你端来一只“盆”一样。

excel中if函数判断多个条件和多个结果(if函数中and)

语言障碍,是出现这种尴尬场面的原因。

而在下面这个公式中

=IF(495<=B2<=500,"合格","不合格")

495<=B2<=500部分正是导致公式错误的原因,因为它在你和Excel的世界里,描述的并不是同一个规则。

在你的眼中,它表示一个大于或等于495,且小于或等于500的数,类似数学中“2<a<5”这样的不等式,而Excel却并不这么认为。

在Excel的眼中,“<=”是比较运算符,它同数学运算符“+”没有太大的区别。当Excel面对“495<=B2<=500”时,会像对待“3+2+5”一样,将它看成是一个进行两次比较运算的表达式,并按计算法则规定的先后顺序计算它,如图所示。

excel中if函数判断多个条件和多个结果(if函数中and)

Excel并不认识这种用不等式表示数据区间的方法。因此,如果你想判断数据是否某个区间的数据时,应该使用其他的方法。

提示


  该例中的问题可以使用多个IF函数进行多次判断来解决,如:=IF(B2>500,"不合格",IF(B2>=495,"合格","不合格"))。但当条件越多时,使用的IF函数就会越多,会增加编写、阅读和理解公式的难度,我们并不推荐使用这种方式去解决。

2用AND函数判断是否同时满足多个条件

AND函数是IF函数最好的小伙伴之一,当IF需要同时对多个条件进行判断时,可以将所有的条件都交给AND,AND会依次对它们进行判断,然后再告诉Excel是不是所有的条件都成立。

对,它就像你安装在计算机上的杀毒软件,当你指定要扫描的分区后,它就会依次对这些分区进行扫描,然后根据扫描结果告诉你系统是否安全,如图所示。

excel中if函数判断多个条件和多个结果(if函数中and)
excel中if函数判断多个条件和多个结果(if函数中and)

在这个例子中,必须满足4个条件(C盘安全,D盘安全,E盘安全,F盘安全),杀毒软件才会提示系统安全,只要其中某个条件不成立,杀毒软件都认为系统存在病毒威胁。

excel中if函数判断多个条件和多个结果(if函数中and)

Excel中的AND函数就是用来代替人类语言中的“且”,连接多个条件的函数,如“C盘安全且D盘安全且E盘安全且F盘安全”可以改写为:

excel中if函数判断多个条件和多个结果(if函数中and)

杀毒软件扫描病毒并报告结果的过程,可以按Excel的思维,使用IF和AND函数将其写成公式:

=IF(AND(C盘安全吗?,D盘安全吗?,E盘安全吗?,F盘安全吗?),"系统很安全","系统存在病毒威胁")

IF根据AND返回的结果是TRUE还是FALSE,来选择输出“系统很安全”还是“系统存在威胁”的结论。

正因为可以直接将所有需要判断的条件丢给AND,所以可以借助AND函数解决判断面粉是否合格的问题,公式为:

=IF(AND(B2>=495,B2<=500),"合格","不合格")


好了,今天咱们的内容就是这些吧,祝各位一天好心情!


图文作者:叶枫

《别怕 Excel函数其实很简单》作者

本文由站内用户发布,不代表喵趣网立场,如有侵权请联系本站删除!欢迎转载分享!

联系我们

在线咨询:点击这里给我发消息

微信号:13-845-161

工作日:9:30-18:30,节假日休息