IF函数是Excel中使用频率非常高的一个函数。如果分析数据时,面临的是“如果……,那么……,否则……”这样的问题,就可以考虑使用IF函数。 1 函数语法 IF函数的语法如下: IF(logical_test,[value_if_true],[value_if_false]) logical_test指逻辑测试,例如“5>2”、“4<3”。逻辑测试的结果为True(真)或False(假)。“5>2”是正确的,这个逻辑测试成立,那么就返回True。“4<3”是错误的,这个逻辑测试不成立,那么就返回False。 value_if_true指如果逻辑测试结果为True,返回什么值。 value_if_false指如果逻辑测试结果为False,返回什么值。 总之,IF函数的功能是,先进行逻辑测试,如果成立返回一个值,如果不成立,返回另一个值。 例如下面的示例中,以“60”分作为分界线判断是否及格。如果分数大于等于60,那么及格,否则不及格。 在C2单元格输入的公式为: =IF(B2>=60,"及格","不及格") 因为B2单元格的分数为“89”,“89>=60”是成立的,所以C2单元格的公式返回“及格”。而B3单元格的分数为“56”,“56>=60”不成立,所以C3单元格的公式返回“不及格”。 在IF函数中进行逻辑测试时,经常要使用比较运算符。 下图中列出了Excel中使用的六个比较运算符及各自的含义。例如“>”的含义是“大于”。在单元格输入公式“=5>3”,返回结果为“TRUE”。 接下来通过示例来讲解IF函数的基础用法,多个IF函数嵌套的用法,以及IF函数和OR/AND函数组合的用法。 2 用法示例 1、基础用法 如果销售业绩大于等于销售目标,那么返回“完成”,否则什么都不返回。 在D2单元格输入公式:=IF(C2>=B2,"完成","") 在这个例子中,如果逻辑测试成立,返回值“完成”,如果不成立,什么都不返回,用一对英文双引号("")来表示什么都不返回。 2、IF函数嵌套 在IF函数的嵌套用法中,逻辑测试不成立时,返回的是IF函数,这个IF函数继续进行逻辑测试成立与否的判断。 例如下图示例中,如果分数>=90为“优”,分数>=80为“良”,分数>=60为“及格”,分数<60为“不及格”。 在C2单元格输入公式: =IF(B2>=90,"优",IF(B2>=80,"良",IF(B2>=60,"及格","不及格"))) 这个公式的含义是,如果分数>=90,那么返回“优”,不满足该条件,继续用IF函数判断,如果分数>=80,那么返回“良”,否则仍继续用IF函数判断,如果分数>=60,那么返回“及格”,否则返回“不及格”。 当满足一个逻辑测试条件时,IF函数就不再继续向后判断了。比如B2单元格的分数“92”,“92>=90”,逻辑测试成立,返回“优”,不再继续判断。B3单元格的分数“56”,“56>=90”不成立,继续向下判断,“56>=80”也不成立,继续向下判断,“56>=60”仍然不成立,所有逻辑测试均不满足,因此返回“不及格”。 在IF函数嵌套中,从前向后依次判断条件是否成立,如果满足条件,就不再向后判断了。因此,IF函数嵌套中要注意逻辑测试的顺序。 在IF函数嵌套中,每进行一次逻辑测试,都要写一次IF函数。这样未免有些麻烦。Excel2019引入了新函数IFS函数。在IFS函数中,只需要罗列逻辑测试及逻辑测试成立时返回的值即可,不需要重复输入函数。 如下图所示,在C2单元格输入公式: =IFS(B2>=90,"优",B2>=80,"良",B2>=60,"及格",B2<60,"不及格") 该公式的含义是:如果B2>=90,返回“优”;如果不满足该条件,再看是否满足B2>=80,如果成立则返回“良”;还不满足条件继续判断B2>=60,成立则返回“及格”;最后如果B2<60,返回“不及格”。 3、和and函数组合 如果同时满足多个条件时,返回一个值,任意一个条件不满足,则返回另一个值。这类问题需要if函数和and函数组合在一起使用。 And函数的语法为: =AND(logical1,[logical2],…) 当所有逻辑判断均为True时,And函数返回True;只要有一个逻辑判断为False,and函数返回False。 比如下图,D2单元格输入公式:=AND(B2>=60,C2>=60) 当B2、C2的值都大于等于60,D2返回True;B2、C2有一个小于60,D2返回False。 当科目1和科目2的分数均大于等于60时,返回“通过”,否则返回“不通过”。 在D2单元格输入公式: =IF(AND(B2>=60,C2>=60),"通过","未通过") 4、和or函数组合 如果满足任意一个条件时,返回一个值,所有条件都不满足,则返回另一个值。这类问题需要if函数和or函数组合在一起使用。 Or函数的语法为: =OR(logical1,[logical2],…) 当任意一个逻辑判断为True时,Or函数返回True;所有逻辑判断都为False,Or函数返回False。 比如下图,D2单元格输入公式:=Or(B2>=60,C2>=60) 当B2、C2的值有一个大于等于60,D2返回True;B2、C2都小于60,D2返回False。 当科目1和科目2任一科目分数大于等于60时,返回“通过”,科目1和科目2分数都小于60时,返回“不通过”。 在D2单元格输入公式: =IF(OR(B2>=60,C2>=60),"通过","不通过") 点个在看你最好看 |
|