理论概念
函数释义:
IF:条件选择函数,一般是指程序设计或Excel等软件中的条件函数,根据指定的条件来判断其“真”(TRUE)、“假”(FALSE),根据逻辑计算的真假值,从而返回相应的内容。
IF函数格式:IF(logical_test,value_if_true,value_if_false)
logical_test为逻辑表达式
value_if_true,逻辑表达式为“真”(TRUE)的返回值
value_if_false,逻辑表达式为“假”(FALSE)的返回值
课程精要
IF函数用法
- IF函数常规用法:条件选择
=IF(B4>=4000,"返利","不返利")
- IF函数多层嵌套用法:(双条件分坎级返利计算)
这样看起来是不是很崩溃
=IF(AND(B7<4000,C7<1),0,IF(OR(AND(B7>=4000,B7<7000,C7<1),AND(B7<4000,C7>=1,C7<1.05)),0.5,IF(AND(B7>=4000,B7<7000,C7>=1,C7<1.05),0.8,IF(OR(AND(B7>=7000,C7<1),AND(B7<4000,C7>=1.05)),1,IF(OR(AND(B7>=7000,C7>=1,C7<1.05),AND(B7>=4000,B7<7000,C7>=1.05)),1.5,IF(AND(B7>=7000,C7>=1.05),3,"错误"))))))
或者分行写如下:
=IF(AND(B4<4000,C4<1),0,
IF(OR(AND(B4>=4000,B4<7000,C4<1),AND(B4<4000,C4>=1,C4<1.05)),0.5,
IF(AND(B4>=4000,B4<7000,C4>=1,C4<1.05),0.8,
IF(OR(AND(B4>=7000,C4<1),AND(B4<4000,C4>=1.05)),1,
IF(OR(AND(B4>=7000,C4>=1,C4<1.05),AND(B4>=4000,B4<7000,C4>=1.05)),1.5,
IF(AND(B4>=7000,C4>=1.05),3,"错误")
)))))
解析:
- 公式中的6种颜色涂色的条件部分,与上图产品返利值的定义域一一对应
- AND逻辑函数,所有参数的逻辑值为真时,返回TRUE;只要有一个参数的逻辑值为假,即返回 FALSE。用比较通俗的话来说,就是做多选题,必须所有选项都符合才是对(true),否则就是错(false)
- OR逻辑函数,在其参数组中,任何一个参数逻辑值为 TRUE,即返回 TRUE;所有参数的逻辑值为 FALSE,才返回 FALSE。
注意注意 注意!!!
Excel中不能用连续式逻辑表达式如:
4000<=B4<7000错误写法,只能写作:AND(B4>=4000,B4<7000)
这个题目确实有点复杂,也最具有IF嵌套的代表性,大家要好好研究透彻
- INDEX与IF函数嵌套:双条件分坎级返利计算
=INDEX($H$5:$J$7,IF(B4<4000,1,IF(B4<7000,2,3)),IF(C4<1,1,IF(C4<1.05,2,3)))
注:INDEX索引函数(返回指定位置中的内容)格式如下:(上节中我们已经详细讲过)
INDEX(array,row-num,column-num)
INDEX(区域,返回值所在的行号,返回值所在的列号)
array:要返回值的单元格区域或数组;row-num:返回值所在的行号;column-num:返回值所在的列号。
解析:
=INDEX($H$5:$J$7,IF(B4<4000,1,IF(B4<7000,2,3)),IF(C4<1,1,IF(C4<1.05,2,3)))
$H$5:$J$7要返回值的单元格区域
IF(B4<4000,1,IF(B4<7000,2,3))返回值所在的行号
IF(C4<1,1,IF(C4<1.05,2,3))返回值所在的列号
总结:INDEX与IF函数嵌套解决同样的问题,公式却简单了很多,这里只用了IF函数两层嵌套。