突破vlookup函数只能首列查找
大家好,今天和大家分享“突破Vlookup只能首列查找”,效果看动画。
一、数组公式(要三键Ctrl Shift 回车)
=IFERROR(VLOOKUP($A8,CHOOSE({1,2,3,4},$B$1:$B$4,$A$1:$A$4,$C$1:$C$4,$D$1:$D$4),COLUMN(B1),),'')
二、公式解释
choose函数
这个函数参数不确定
第1参数是引用第2参数,及后面的数据
举个例子=CHOOSE(3,'张三','李四','王五','钱六')返回“王五”,因为从第2参数开始编号,张三索引号为1,李四索引号为2,王五索引号为3,钱六索引号为4,相信大家都明白了
choose这个函数第1参数不用数组只能引用一个值,如果第1参数使用数组,那么就可以引用多个值,如我现在想同时引用,如=SUM(CHOOSE({2,3},100,200,300,400))求和返回500,因为200在第2个位置,300在第3个位置,大家记得要从第2参数开始数,不要从第1参数开始数,同样的道理,我们可以理解choose第1参数使用数组,可以更改单元格区域列的位置,这样就突破了vlookup函数只能首列查找
=CHOOSE({1,2,3,4},$B$1:$B$4,$A$1:$A$4,$C$1:$C$4,$D$1:$D$4)
choose第1参数用了数组{1,2,3,4}
choose第2参数,第3参数,第4参数,第5参数分别是B列,A列,C列,D列,这样就起到更改了列的位置,B列排在首列了
vlookup函数4个参数
第1参数:查找值
第2参数:数据源
第3参数:返回数据源第几列?
第4参数:查找方式,这里我们用了0精确查找,且后面那个0不写,只打了一个逗号。
vlookup函数第3参数用了column(B1)返回的是2,右拉返回2,3,4
最外面嵌套一个ifferror,目的是屏蔽错误
三、最后公式截图
四、温馨提示
如果是反向查找,我个人不建议大家用这样的公式,这个还不算复杂,用if更复杂
公式如下
=VLOOKUP($A8,IF({1,1,1,0},IF({1,1,0},IF({1,0},$B$1:$B$4,$A$1:$A$4),$C$1:$C$4),$D$1:$D$4),COLUMN(B1))
如果是反向查找,建议大家用index加match组合,容易理解些
公式如下=INDEX($A$1:$D$4,MATCH($A8,$B$1:$B$4,),MATCH(B$7,$A$1:$D$1,))
联系客服