分享

IF函数嵌套AND和OR的多重判断精髓案例(必会的逻辑判断搭配!)

 互利互读一辈子 2023-03-28 发布于北京

IF函数是大家都熟知的函数,

最近有一些朋友关于这个函数的问题比较多,

特别是需要做多重判断,包括如何精确的搭配:

AND函数和OR函数

类似于下面这个比较长的公式:

图片

我们一步一步来推进帮助大家深刻理解.

案例1

这是一张成绩表,我们需要判定:

总分超过180为合格:

=IF(SUM(B2:D2)>180,'平均及格','平均不及格')

图片

做一个延伸,如果总分超过230则为优秀

如果总分大于200则为良好

如果总分大于180则为平均及格

否则平均不合格

=IF(SUM(B2:D2)>230,'优秀',IF(SUM(B2:D2)>200,'良好',IF(SUM(B2:D2)>180,'平均及格','平均不及格')))

图片

做这种数字类型的分级判断,切记一点,从最大值开始进行判断.

案例2

在这些科目中如果有低于60分的则为不合格,

你可以这么写:

=IF(AND(B2>=60,C2>=60,D2>=60),'全部及格','有科目不及格')

AND的意义在于:

需要满足每一个科目分数都大于60分.

你可以理解为:

语文>=60同时数学>=60同时外语>=60

需要同时满足3个条件才是全部及格,否则就是有科目不及格.

图片

或者你可以可以使用OR函数的搭配:

=IF(OR(B2<60,C2<60,D2<60),'有科目不及格','全部及格')

OR是或者的意思.

所以你可以理解为:

语文<60或者数学<60或者外语<60

如果但凡有一个小于60,

那么就是有科目不及格,

否则就是全部及格.

图片

案例3


上一个案例谈及有不及格的成绩判定,

那么如果表达:有几门不合格呢?

=SUMPRODUCT(--(B2:D2<60))

这是一个数组:

B2:D2<60

的输出结果为:

{FALSE,FALSE,FALSE}

在公式前方加上两个负号,可以将布林判断结果转化为1和0

--(B2:D2<60)

输出结果:

{0,0,0}

最后:

=SUMPRODUCT(--(B2:D2<60))

进行求和,当然你也可以使用SUM函数得到结论如下:

图片

当然,你想要做一些文本描述表达,可以这么写:

=IF(SUMPRODUCT(--(B2:D2<60))>0,'有'&SUMPRODUCT(--(B2:D2<60))&'科不合格','')

图片

案例4

最后一个案例,先看看需求:

如果总分超过250,同时都及格,非常优秀

如果总分超过200 低于250 同时都及格 优秀

如果总分超过200 低于250 同时有不及格的 偏科

加油

=IF(AND(SUM(B2:D2)>=250,B2>=60,C2>=60,D2>=60),'非常优秀',IF(AND(SUM(B2:D2)>=200,SUM(B2:D2)<250,B2>=60,C2>=60,D2>=60),'优秀',IF(AND(SUM(B2:D2)>=200,SUM(B2:D2)<250,OR(B2<60,C2<60,D2<60)),'偏科','加油'))

图片

以上,

之前的公式我相信大家都可以看懂,

如果之前内容看懂,那么最后一个案例公式你一定可以看懂.

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多