Excel中巧用逻辑函数与IF搭配实现多条件求值是如何实现的呢?下面我们一起来了解下。
第一步:IF函数的基本格式
=IF(条件, 成立时A, 不成立时B)
功能:当IF函数中指定的条件成立(运算结果为真)时函数的结果为A,否则为B。图解如下:
参数说明:
(1)条件:是一个比较表达式,如 A1>10,A1=10等,常用的比较有>、<、=、<>(不等于)、>=(大于等于)、<=(小于等于)。如果是与一个文本比较,要把文本用双引号包含起来,如A1=”男”。与其它值比较一般是直接表达,如A1>10,A1=B2等。
(2)成立时A:前一个条件表达式的值为真(TRUE)时(即条件成立时)的值,其值若为文本请加双引号。
(3)不成立时B:前一个条件表达式的值为假(FALSE)时(即条件不成立时)的值。其值若为文本请加双引号。
实践练习:
请为下表加上称呼,要求:性别为男称呼为“先生”,否则称呼为“女士”。
按IF函数的格式,我们先求得梅超风的称呼,而该称呼是根据C3单元格的值来决定的。所以条件是:C3=”男”。成立时:”先生”。不成立时:”女士”,最终得出的公式为:
=IF(C3=”男”, “先生”, “女士”) 或者 =IF(C3=”女”, “女士”, “先生”),如下图所示:
第二步:多个条件如何表示?
Excel中多个条件可以采用专门的逻辑运算函数来表示,其有3个基本的逻辑函数,它们分别是:And(与,一般理解为“而且”)、Or(或)、NOT(非),这3个函数计算的结果只有两种,一是TRUE(逻辑真,即成立),二是FALSE(逻辑假,即不成立)。
And函数详解:
格式:and(条件1, 条件2, 条件3, ……)
功能:当括号内的所有条件都成立时其结果才为真(TRUE),否则为假(FALSE)。
示例1:and(2>1, 3>4, 6>5)的值为FALSE,因为3>4不成立。
示例2:and(6>5, 3>2, 8>7)的值为TRUE,因为3个条件都成立。
实践应用:下面每个同学的各科成绩都合格了吗(以60分为合格)?
以梅超风同学为例,她的成绩分别对应C3, D3, E3,要想知道这三科是否都及格,用常规的文字描述是:C3>=60且D3>=60且E3>=60,刚好符合AND函数的运算规则,所以,可以用公式:AND(C3>=60, D3>=60, E3>=60)来表示。最终结果如下:
Or函数详解:
格式:or(条件1, 条件2, 条件3, ……)
功能:当括号内的条件有一个成立时其结果就为真(TRUE),否则为假(FALSE)
示例1:or(1>2, 3>4, 6>5)的值为TRUE,因为6>5这个条件成立。
示例2:or(1>2, 2>3, 3>4)的值为FALSE,因为这三个条件都不成立。
对比一下AND函数,我们不难发现,OR与AND刚好是个相反的运算。
实践应用:求出下表中每个同学是否有合格的科目?
根据实际需求,以梅超风为例,即在C3, D3, E3中,只要有一个小于60,则含有不合格科目。用常规文字描述是:C3<60或D3<60或E3<60,刚好符合OR函数的运算规则,所以,可以用公式:OR(C3<60, D3<60, E3<60)来表示。最终结果如下:
NOT函数详解:
NOT函数又称为取反运算,即把TRUE变为FALSE,把FALSE变为TRUE。可得出:NOT(TRUE) = FALSE, NOT(FALSE) = TRUE
第三步:在IF中使用多条件
看看上两图的结果,都是用TRUE和FALSE显示的,老板当然想看到的是“是”和“否”,所以进一步加工一下结果就可以解决啦。还是以所有科目都及格则合格为例子,我们得出
=if(所有科目都及格, “合格”, “不合格”)
所有科目都及格用and(C3>=60, D3>=60, E3>=60)来表示,最终得到函数应用的公式为:
=if(and(C3>=60, D3>=60, E3>=60), “合格”, “不合格”),结果如下图所示:
第四步:条件更复杂一点
法定婚龄的判定方法是:女且20岁以上 或 男且22岁以上,以梅超风为例。
整个逻辑表达式是一个“或关系”,所以用OR。简化一下就是:or(女且 20岁以上, 男且22岁以上)。
继续表达女且20以上,因为是且关系所以用AND,那么就是and(性别=”女”, 年龄>=20)。男同胞同理表达为and(性别=”男”, 年龄>=22)。
用C3代替性别,D3代替年龄,得公式:
or(and(c3=”女”, d3>=20), and(c3=”男”, d3>=22)),
如此我们就得到了复杂条件的表达方式,最后和IF搭配使用一下,得出最终公式为:
=IF(OR(AND(C3=”女”, D3>=20), AND(C3=”男”, D3>=22)), “是”, “否”)
写在最后
- 本文提及的IF一定只有两种结果,如果牵涉到3个或更多种结果的时候,要用多个IF嵌套解决!(下次分享IF的嵌套使用技巧)。
- OFFICE的版本是2010。
- 文中公式里所有用到的标点符号全部都为英文标点。