VLOOKUP和MATCH嵌套以⾼效引⽤多列数据
VLOOKUP函数在⽇常⼯作中⼗分常见,以⾄于你要是没⽤过VLOOKUP函数,你都不好意思说你懂EXCEL。多列vlookup函数的使用方法
⼀般情况下,我们需要在源数据中查某个指定列的数据,就会⽤到VLOOKUP函数(如果是指定⾏的数据,则⽤HLOOKUP函数)。这个时候“指定列”⼀般习惯⽤常数(如1,2,3,4,5)。
那么,如下图,当需要在绿⾊单元格引⽤源数据表中的多列函数时,公式/函数该如何写?
乍⼀看,这个不难啊,三个字段“性别”,“兴趣”“电话”分别⽤VLOOKUP函数写个公式就好了。嗯,⽤三个VLOOKUP函数固然可以。但是,如果有5个字段,20个字段呢?这个,是不是有点烦躁?
VLOOKUP函数与MATCH函数嵌套
今天我们要⽤VLOOKUP函数与MATCH函数嵌套使⽤获取多列数据,以提⾼效率。
1.    VLOOKUP函数
语法:VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)
第三参数 col_index_num 可以是常量(指定第⼏列),也可以是变量(通过函数运算返回⼀个数字)。如果能在第三参数写进⼀个函数,是不是可以根据不同字段返回不同列数呢?
2.  MATCH函数
含义:返回指定数值在指定数组区域中的位置
语法:MATCH(lookup_value, lookup_array, match_type)
从MATCH函数含义可以看出,MATCH函数返回的是“位置”(数字),恰好可以满⾜我们的要求。
3.  VLOOKUP函数与MATCH函数嵌套使⽤
现在我们在I2单元格输⼊以下公式:
=VLOOKUP($H2,$A$1:$F$9,MATCH(I$1,$A$1:$F$1,0),0)
然后复制粘贴到所有的绿⾊单元格,或者向右,向下拖拽。可以看到结果完全正确。
在这⾥,MATCH函数将查“性别”,“兴趣”,“电话”在A1到F1中的位置,再将返回值(数字)赋与VLOOKUP第三参数。那么,⽆论有多少个需要查的字段,这个MATCH函数都相应返回对应的位置数字。也就是说,我们只需要写这⼀个公式就够了。
4.  成败关键—混合引⽤
$A$1  绝对引⽤。复制或者拖拽,引⽤单元格固定不变。
A1    相对引⽤。复制或者拖拽,引⽤的单元格根据⾏/列位置变化⽽变化。
$A1或者A$1 混合引⽤。复制或者拖拽,$符号后⾯的⾏/列保持不变。
在上⾯的例⼦中,我们需要在固定在H列中到查值,所以VLOOKUP函数中⼀定要在H2的H前加上$符号,得到$H2;
同时,我们需要固定在第⼀⾏中到查的字段,所以MATCH函数中⼀定要在I1的1前加上$符号,得到I$1。
如此,才能确保我们在复制/拖拽过程中单元格被正确引⽤。如果希望进⼀步加深理解绝对/相对/混合引⽤,可以尝试做⼀个“九九乘法表”。如下图:
5.  延伸思考
COLUMN函数,ROW函数返回的分别是单元格所在第⼏列,第⼏⾏。在这个例⼦中能不能⽤VLOOKUP函数和COLUMN函数嵌套?效率如何?在什么情况下时候嵌套更好⽤呢?
这⼏个问题留给⼤家思考,有兴趣的话欢迎私信我交流讨论。
飞机从北京飞往纽约,⼀定不⽌⼀条航线,可以往北极⽅向飞,也可以往南极⽅向飞,还可以跨太平洋飞。但是最后航空公司⼀般会选择往北极⽅向飞。因为这条航线效率⾼,经济效益最好。
同理,在使⽤EXCEL的过程中,我们也需要不断思考,如何让我们的⼯作效率变得更⾼?Copyright reserved @ 黄波艺带你玩转Excel。欢迎转载,但请注明出处。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。