使用逻辑函数可以对单个或多个表达式进行逻辑计算,然后返回一个逻辑值。
逻辑函数与乘法、加法
运算AND 函数、OR 函数和 NOT 函数分别对应“与”“或”和“非”3 种逻辑关系。
当所有参数为逻辑值真时,AND 函数返回 TRUE。只要有一个参数为逻辑值假,AND 函数就返回FALSE。
只要有一个参数为逻辑值真,OR 函数就返回 TRUE。当所有参数均为逻辑值假时,OR 函数返回FALSE。
如果参数为逻辑值真,NOT 函数返回 FALSE。如果参数为逻辑值假,NOT 函数返回 TRUE。
以判断订单是否包邮为例。图13-5所示为某网店订单信息表的部分数据,根据规定,钻石会员订单金额大于 59 元或者其他会员订单金额大于 79元可以包邮。

现要求根据订单的会员级别和金额,判断是否包邮。D2 单元格输入以下公式,并将公式复制到 D2:D10 单元格区域。
=IF(OR(AND(B2=" 钻石会员 ",C2>59),AND(B2="其他会员 ",C2>79))," 包邮 ","")公式中的“AND(B2=" 钻石会员 ",C2>59)”部分判断订单是否满足会员级别为“钻石会员”且订单金额大于 59,若同时满足,则返回 TRUE,否则返回 FALSE。
公式中的“AND(B2=" 其他会员 ",C2>79)”部分判断订单是否满足会员级别为“其他会员”且订单金额大于 79,若同时满足,则返回 TRUE,否则返回 FALSE。
OR 函数以两个 AND 函数的运算结果作为参数,任意一个参数为 TRUE,即返回逻辑值TRUE。
最后用 IF 函数对不同的逻辑运算结果返回相应的结果。使用乘法代替 AND 函数,加法代替 OR 函数,可得到相同的结果,公式如下。=IF((B2=" 钻石会员 ")*(C2>59)+(B2=" 其他会员 ")*(C2>79)," 包邮 ","")
使用 IF 函数条件判断
以IF函数评定考核等级为例。图 13-6 展示了某公司员工考核成绩表的部分内容,需要根据考核成绩评定考核等级。成绩大于等于 90 分为优秀,大于等于 80 分为良好,大于等于 60 分为合格,其他为不合格。

C2 单元格输入以下公式,并将公式复制到 C2:C10 单元格区域。=IF(B2>=90," 优秀 ",IF(B2>=80," 良好 ",IF(B2>=60," 合格 "," 不合格 ")))如果成绩大于等于 90,返回“优秀”。如果不满足第一个条件,继续判断成绩是否大于等于80,满足条件,返回“良好”。如果也不满足第二个条件,继续判断成绩是否大于等于 60,满足条件,返回“合格”。如果以上条件均不满足,则返回“不合格”。可以使用 LOOKUP 函数来完成考核评级,D2 单元格公式如下。=LOOKUP(B2,{0,60,80,90;" 不合格 "," 合格 "," 良好 "," 优秀 "})
用函数屏蔽错误值
在函数公式的应用中,由于多种原因常会返回错误值,为了使表格更加美观,往往需要屏蔽这些错误值的显示。IFNA 函数和 IFERROR 函数可以屏蔽错误值,它们的语法如下。IFNA(value, value_if_na)IFERROR(value, value_if_error)参数 value 是需要检查错误的表达式。当 value 参数为 #N/A 错误值时,IFNA 函数返回 value_if_na 参数的值,否则返回 value 参数本身。当 value 参数为任意错误值时,IFERROR 函数返回 value_if_error 参数和值,否则返回 value 参数本身。
