无极4《Q2347660 》在IF函数第一参数的条件判断比较复杂的情况中,也经常会看到AND函数与OR函数的身影,小编整理多条件if函数的使用,一起来学习吧。
在图1-1所示的数据中,根据性别及年龄判断员工是否可以退休。其中男性满60岁可以退休,女性满55岁可以退休。在看似复杂的条件判断中,实际上只有“是否可以退休”为“是”或“否”两种可能出现的情况,无极4注册登录网址所以只需要使用一个IF函数进行处理,在C2单元格输入公式“=IF(OR(AND(A2>=60,B2=”男”),AND(A2>=55,B2=”女”)),”是”,”否”)”后下拉填充。
在这个公式中,IF函数的第一参数由4个条件判断根据其逻辑关系共同组成。大于或等于60岁与性别为男必须同时满足,表示满60岁的男性,使用AND函数相连,描述且的关系;大于或等于55岁与性别为女必须同时满足,表示满55岁的女性,使用AND函数相连,描述且的关系。而这两个AND函数之间又是或的关系,表示满60岁的男性或满55岁的女性都将在C列返回“是”,所以使用OR函数相连。
AND函数和OR函数分别表示“与运算”和“或运算”,布尔代数中布尔值在进行运算时,具备表1-1所示定律。
AND函数和OR函数分别表示“与运算”和“或运算”
[插图]
表1-1中的布尔运算定律同样适用于Excel中的与运算和或运算,当我们对布尔值进行四则运算时,TRUE将被视为1,无极四荣耀注册FALSE将被视为0,则有如表1-2所示的关系。
对布尔值进行四则运算
[插图]
根据以上计算方法,可以使用乘法、加法替换图1-1所示数据中的公式,公式“=IF(OR(AND(A2>=60,B2=”男”),AND(A2>=55,B2=”女”)),”是”,”否”)”可被替换为“=IF((A2>=60)(B2=”男”)+(A2>=55)(B2=”女”),”是”,”否”)”。在这个公式中,两次条件判断相乘的公式“(A2>=60)(B2=”男”)”表示两次判断之间为且的关系,仅当两次判断的结果均为TRUE时,乘积才为1,即TRUE;而公式“(A2>=60)(B2=”男”)+(A2>=55)*(B2=”女”)”将两个乘积加在一起,表示这两个乘积中有任何一个不为0,相加的结果就不为0,即仅当所有条件判断的结果全部为FALSE时,才会返回结果FALSE,表示或的关系。
在处理多个条件判断时,使用加法替代OR函数有时也会发生判断的结果大于1的情况,例如图1-2所示情况,对年龄大于60岁员工或女性员工给予1000元奖金。在C2单元格输入公式“=IF((A2=”女”)+(B2>60),1000,0)”后下拉拖曳。
在表格第三行数据中,同时满足了性别为女性和年龄大于60这两个条件,此时表示条件判断的公式“(A3=”女”)”和“(B3>60)”相加的结果为2。在介绍TRUE与FALSE的章节里,我们提到过,在四则运算中,TRUE与FALSE将被视为1和0;而0被视为FALSE,其他有理数被视为TRUE,所以即使相加的结果为2,依然被视为TRUE,即布尔或运算中“1+1=1”的运算。
注意:在非数组公式的创建中,我们可以使用乘法代替AND函数,使用加法代替OR函数;同样也可以使用AND函数代替表示逻辑判断的乘法,使用OR函数代替表示逻辑判断的加法。从一定意义上讲,在表示逻辑判断时,AND与乘法通用、OR函数与加法通用,但在数组公式中则不然,如果在数组公式中使用AND函数替换表示逻辑判断的乘法,或使用OR函数替换表示逻辑判断的加法,将会造成判断出错。