你是不是一直没搞懂这个IF({1,0} ?

507 次浏览

提问加Q群341401932 加微信EXCEL880B领取免费教程

VLOOKUP有一些众所周知的先天性缺陷,如:只能从中往右查询,返回值单一,数据区域要求严格等等,但是当它遇到IF,一切苦难迎刃而解。其核心逻辑是用IF结合数组构建数据区域,而VLOOKUP在构建的区域中查询,返回。

当然有的同学会说新版的XLOOKUP不存在这个问题,可是有很多人的Excel还是老版本,无法保证全部兼容,特别是领导的电脑,所以还是有必要学一点兼容性更好地函数!

1. IF构建数据区域

IF(1,B2:B11,””)第一参数1,返回固定区域B2:B11

IF(0,””,A2:A11)第一参数0,返回固定区域A2:A11

IF({1,0},B2:B11,A2:A11),将第一参数设置为数组{1,0},同时返回两个数据区域

你是不是一直没搞懂这个IF({1,0} ?插图

2. 逆向查询

=VLOOKUP(E2,IF({1,0},B2:B11,A2:A11),2,0)

此例中构建数据区域的目的是调整查询数据的位置,配合VLOOKUP从左往右查询的特性。

你是不是一直没搞懂这个IF({1,0} ?插图1

3. 多条件查询

=VLOOKUP(E2&F2,IF({1,0},$A$2:$A$11&$B$2:$B$11,$C$2:$C$11),2,0)

此例中为解决重名问题,“姓名&性别”作为查询条件,同时用IF重新构建数据区域,对应的“姓名&性别”作为首列,查询内容作为第二列。

你是不是一直没搞懂这个IF({1,0} ?插图2

4. 返回多个结果

 

=VLOOKUP(E2,IF({1,0},A2:A11,B2:B11&”/”&C2:C11),2,0)

此例中需要同时返回性别和学号,通过IF函数构建新的数据区域实现。

你是不是一直没搞懂这个IF({1,0} ?插图3

郑广学Excel实战教程  课程咨询加我微信EXCEL880B