IF({1,0},迷惑了这么多人,我们一起来聊聊究竟怎么玩转它!

很多小伙伴对if({1,0}的迷惑不解,大部分都来自于vlookup函数的从右至左查找公式中看到有if{1,0} 。比如昨天我们推送的教程:学习VLOOKUP函数路上的第二个坑
【IF({1,0},迷惑了这么多人,我们一起来聊聊究竟怎么玩转它!】if({1,0}是利用常量数组作为IF函数的第1个参数,实现构建新的两列数组的用法 。想彻底了解它,我们还得从IF函数的基本用法说起~~=IF(A1>=0,"正数","负数"),这个很容易理解,如果条件成立,就返回后面第一个值,条件不成立就返回第二个 。A1>=0(条件表达式)的结果只有两种:A1的值>=0时,结果是TRUE,否则结果是FALSE,而在IF结构中,所有非0的数字都等同于TRUE,而0相当于FALSE 。由此,下面两个公式的结果也可以理解了:=IF(1,"正数","负数"),结果是"正数";=IF(0,"正数","负数"),结果是"负数" 。IF函数不仅可以返回一个值,也可以返回区域引用 。所以下面的公式也应该可以理解了:=IF(1,A2:A3,B2:B3),返回的是A2:A3=if(0, A2:A3,B2:B3) 返回的是B2:B3而如果IF函数第一个参数是一个数组{1,0}=IF({1,0},A2:A3,B2:B3)参数为数组时,会分别进行计算 。先用1作为参数判断,返回A2:A3;然后用0作为参数判断,又返回一个结果B2:B3 。两个结果重新组合一个数组:A2:A3在第一列,B2:B3在第二列 。我们选中公式,按下F9键,可以看到结果:{1,"滴答老师";2,"小奇老师"} 。下面通过案例再来回顾一下上面所讲解的:案例1:将AB列构成DE列的效果操作:选中D1:E5单元格区域,输入公式:=IF({1,0},B1:B5,A1:A5),记得按下ctrl+shift+回车,完成多单元格公式输入 。案例2:HLOOKUP中的运用HLOOKUP函数的用法和VLOOKUP函数的用法相似,只是vlookup函数是垂直方向的判断,而HLOOKUP函数是水平方向的判断 。根据项目来查找姓名,B5公式为:=HLOOKUP(B4,IF({1;0},B2:E2,B1:E1),2,0)

    推荐阅读