VLOOKUP函数简介

函数使用:VLOOKUP(lookup_value,table_array,col_index_num,[range_lookup])
lookup_value:要匹配查找的内容某一单元格
table_array:去匹配查找的区域(匹配在首列)
col_index_num:返回的内容所在的列数
[range_lookup]:0-精确匹配,1:近似匹配

Vlook函数的8种使用技巧

1.VLOOKUP函数的基本使用

有考生成绩统计表如下,【专业类】单元格为A3

专业类 姓名 性别 来源 原始分
理工 王梅 本地 599
理工 郭磊 本地 661
理工 林涛 外星 467
文科 朱健 本省 310
文科 李明 本省 584

题目:根据考生姓名查找总分

姓名 公式 结果
王梅 ·=VLOOKUP(G5,$B$4: $E$8,4,FALSE) 599
李明 =VLOOKUP(G6,$B$4: $E$8,4,0) 584

注意:
1、选第二参数要求时,查找列和引用列都包含在内
2、【姓名】这一列必须在第二参数的第一列,因此选择区域为B4:E8
3、如果选择区域不是整行的话,需要把区域锁定(F4)即绝对引用
4、col_index_num的列数索引从1开始

2.VLOOKUP函数的跨表使用

大体和单一表的使用方法相同
lookup_value:选择需要输出的表中的需查找值,也可以为具体数值或者字符
table_array:直接点击进入从表后,选中数据区域即可,注意输出表中的lookup_value的值需要在选中数据区域的第一列

3.使用通配符进行查找

适用于模糊查询
举例:从表中需要查找的字符串为【三川实业】,而主表中的字符串为【三川实业有限公司】时,lookup_value可以使用通配符进行模糊查询
lookup_value:B4&"*"
其中B4为【三川实业】,星号为通配符,使用&进行连接
其中添加的通配符可以在前也可以在后

1、工作中99%的可能性使用精确匹配
2、匹配的名称没有写完整时,需要使用通配符,通配符代表是什么都可以
3、通配符*需要用英文的双引号,使用&进行连接

4.什么时候使用近似匹配

当主表是类似于成绩等级/提成比例/工资等级等区间的时候,适用于近似匹配
1、近似匹配找小于等于自己的最大值
2、近似匹配一般是在找数值区间的划分

5.使用过程中可能遇到的问题

主表中的数据为文本型,而从表中数据为数值型的时候,查找会返回#N/A!
解决方法:讲主表转换为数值型(右上角的小三角即可完成转换)或将从表的内容转换为文本型

主表中数据为数值型,从表中为文本型
文本型经过算数运算后可以转换为数值型数字,所以在lookup_value前面加上两个负号即可(或者其他计算后为0的表达式)

6.HLOOKUP函数的使用

当返回数据内容与查找条件数据在同一行的时候,需要采用HLOOKUP函数
解释:可以在表格或数值数组的首行查找指定的数值,并返回表格或数组中指定行的同一列的数值
使用:=HLOOKUP(lookup_value,table_array,col_index_num,[range_lookup])
lookup_value:要匹配查找的内容某一单元格
table_array:去匹配查找的数组区域,匹配行在首行
col_index_num:返回的内容所在行数(首行为1)
[range_lookup]:0为精确匹配,1为近似匹配

7.match+index实现匹配查找

不适用于VLOOKUP函数的情况

有一种情况不适用于与VLOOKUP函数:匹配条件列在结果输出列的右边时,即无法做到lookup_value的值所在的列在选中区域的首列

使用MATCH+INDEX来进行查找

第一步:用match找出lookup_value所处的行数位置
函数:MATCH(lookup_value,table_array,0)
lookup_value:选中从表中需要查找的内容
table_array:在主表中选中含有lookup_value的某一列
Match_type:记得选0精确匹配
第二步:根据所处行数的位置查找出返回内容
函数:INDEX(array,row_num)
array:选主表中需要查找的值所在的列
row_num:即为上一步中的MATCH(lookup_value,table_array,0),直接粘贴过来即可

8.如何快速返回多列结果

VLOOKUP函数第三个函数需要知道返回的内容所在列数,随列数的变化而变化

第一步:用MATCH函数查找返回内容所在的列数
函数:MATCH(‘返回多列结果’!B3,数据源!$A$2 : $K$2,0)

第二步:结合VLOOKUP
函数:VLOOKUP(A4,数据源! $ A: $ K,MATCH(‘返回多列结果’!B3,数据源! $ A $ 2:$K$2,0),0)

第三步:向下拉的时候,需要查找列数不变,行数变化,因此需锁定列数(F4)
函数:VLOOKUP($ A4,数据源! $A : $K,MATCH(‘返回多列结果’!B3,数据源! $ A $2: $K$2,0),0)

第四步:向右拉的时候,需要保持表头的位置不变,位于第2行,因此锁定行数
函数:VLOOKUP($ A4,数据源! $ A: $ K,MATCH(‘返回多列结果’!B$ 3,数据源! $ A$ 2:$K$2,0),0)"

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐