关于VLOOKUP函数的用法_函数vlookup的用法

2020-02-28 其他范文 下载本文

关于VLOOKUP函数的用法由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“函数vlookup的用法”。

关于VLOOKUP函数的用法

“Lookup”的汉语意思是“查找”,在Excel中与“Lookup”相关的函数有三个:VLOOKUP、HLOOKUO和LOOKUP。下面介绍VLOOKUP函数的用法。

一、功能

在表格的首列查找指定的数据,并返回指定的数据所在行中的指定列处的数据。

二、语法

标准格式:

VLOOKUP(lookup_value,table_array,col_index_num , range_lookup)

三、语法解释

VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)可以写为:

VLOOKUP(需在第一列中查找的数据,需要在其中查找数据的数据表,需返回某列值的列号,逻辑值True或False)

1.Lookup_value为“需在数据表第一列中查找的数据”,可以是数值、文本字符串或引用。

2.Table_array 为“需要在其中查找数据的数据表”,可以使用单元格区域或区域名称等。

⑴如果 range_lookup 为 TRUE或省略,则 table_array 的第一列中的数值必须按升序排列,否则,函数 VLOOKUP 不能返回正确的数值。

如果 range_lookup 为 FALSE,table_array 不必进行排序。

⑵Table_array 的第一列中的数值可以为文本、数字或逻辑值。若为文本时,不区分文本的大小写。

3.Col_index_num 为table_array 中待返回的匹配值的列序号。

Col_index_num 为 1 时,返回 table_array 第一列中的数值;

Col_index_num 为 2 时,返回 table_array 第二列中的数值,以此类推。

如果Col_index_num 小于 1,函数 VLOOKUP 返回错误值 #VALUE!;

如果Col_index_num 大于 table_array 的列数,函数 VLOOKUP 返回错误值 #REF!。

4.Range_lookup 为一逻辑值,指明函数 VLOOKUP 返回时是精确匹配还是近似匹配。如果为 TRUE 或省略,则返回近似匹配值,也就是说,如果找不到精确匹配值,则返回小于lookup_value 的最大数值;如果 range_value 为 FALSE,函数 VLOOKUP 将返回精确匹配值。如果找不到,则返回错误值 #N/A。

四、应用例子

A B C D编号 姓名 工资 科室2005001 周杰伦 2870 办公室2005002 萧亚轩 2750 人事科2005006 郑智化 2680 供应科2005010 屠洪刚 2980 销售科2005019 孙楠 2530 财务科2005036 孟庭苇 2200 工 会

A列已排序(第四个参数缺省或用TRUE)

VLOOKUP(2005001,A17,2,TRUE)等于“周杰伦”

VLOOKUP(2005001,A17,3,TRUE)等于“2870”

VLOOKUP(2005001,A17,4,TRUE)等于“办公室”

VLOOKUP(2005019,A1:D7,2,TRUE)等于“孙楠”

VLOOKUP(2005036,A1:D7,3,TRUE)等于“2200”

VLOOKUP(2005036,A1:D7,4,TRUE)等于“工 会”

VLOOKUP(2005036,A1:D7,4)等于“工 会”

若A列没有排序,要得出正确的结果,第四个参数必须用FALAEVLOOKUP(2005001,A1:D7,2,FALSE)等于“周杰伦”VLOOKUP(2005001,A1:D7,3,FALSE)等于“2870”

VLOOKUP(2005001,A1:D7,4,FALSE)等于“办公室”VLOOKUP(2005019,A1:D7,2,FALSE)等于“孙楠”VLOOKUP(2005036,A1:D7,3,FALSE)等于“2200”

VLOOKUP(2005036,A1:D7,4,FALSE)等于“工 会”

五、关于TRUE和FALSE的应用

先举个例子,假如让你在数万条记录的表格中查找给定编号的某个人,假如编号已按由小到大的顺序排序,你会很轻松地找到这个人;假如编号没有排序,你只好从上到下一条一条地查找,很费事。

用VLOOKUP查找数据也是这样,当第一列已排序,第四个参数用TRUE(或确省),Excel会很轻松地找到数据,效率较高。当第一列没有排序,第四个参数用FALSE,Excel会从上到下一条一条地查找,效率较低。

笔者觉得,若要精确查找数据,由于计算机运算速度很快,可省略排序操作,直接用第四个参数用FALSE即可。

最近爱上了VLOOKUP,有人还对它进行了更新。因为它的漏洞就是只能返回重复值得第一个值。下面就详细来叙述一下吧!

VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)Lookup_value 为需要在Table_array第一列中查找的数值。

可以为数值、引用或文本字符串。需要注意的是类型必须与table_array第一列的类型一致。查找文本时,文本不区分大小写;可以使用通配符“*”、“?”。

Table_array 为需要在其中查找数据的数据表。

可以使用对区域或区域名称的引用、常数数组、计算后的内存数组。对区域引用时,可以引用整列,excel会自动判断使用区域。

该参数的第一列必须包含查找的内容,其它列包含需返回的内容;返回内容的列序号由下个参数指定。

Col_index_num 为table_array中待返回的匹配值的列序号。

如为1时,返回table_array第一列中的数值;为2,返回table_array第二列中的数值,以此类推。

如果col_index_num小于1,函数 VLOOKUP 返回错误值值 #VALUE!;

如果col_index_num大于table_array的列数,函数 VLOOKUP 返回错误值 #REF!。

Range_lookup 为一逻辑值,指明函数VLOOKUP返回时是精确匹配还是近似匹配。

如果为TRUE或省略,则返回近似匹配值,也就是说,如果找不到精确匹配值,则返回小于lookup_value的最大数值;

近似匹配查询一般用于数值的查询,table_array的第一列必须按升序排列;否则不能返回正确的结果。

如果range_value为FALSE(或0),函数VLOOKUP将返回精确匹配值。

此时,table_array不必进行排序。如果找不到,则返回错误值#N/A;可isna检测错误后使用if判断去除错误信息。

VLOOKUP 经常会出现错误的#N/A,下面是几种可能性: 数据有空格或者数据类型不一致。

可以在lookup_value 前用TRIM()将空格去除。

如果格式不一致,可以将数值强制转换成文本,lookup_value之后用&跟“”表示的空字符串。将文本转换成数值,lookup_value*1进行运算。假设有以下两个表格:表1:

姓名 身份证 学科 成绩

张三 310111 物理 A

李斯 310112 化学 B王五 310113 政治 A赵六 310114 物理 B

张三 310111 政治 C

赵六 310114 语文 B刘备 310115 英语 D

表2:

姓名 身份证 住址 学科 成绩

曹操 319723 陕西马超 310197 甘肃赵云 319784 黑龙江

李斯 310112 浙江刘备 310115 江苏张三 310111 上海

请问:如何快速的将表2的学科和成绩自动填入?直接使用VLOOKUP即可。示例如下:

=VLOOKUP($B1,Sheet1!$B$1C$5,2,FALSE)

涵义:在Sheet1的单元格区间B1:C5,查找符合条件为:第一列与当前工作表单元格B1的值相等的第二列的值。

$B1 条件值

Sheet1!$B$1C$5 要查找区间(注意:请使用绝对引用)2 查找的结果为区域中的第几列FALSE 表示精确查找

*具体应用中大家注意各个参数的意义!调整参数来满足个人需要。

《关于VLOOKUP函数的用法.docx》
将本文的Word文档下载,方便收藏和打印
推荐度:
关于VLOOKUP函数的用法
点击下载文档
相关专题 函数vlookup的用法 函数 VLOOKUP 函数vlookup的用法 函数 VLOOKUP
[其他范文]相关推荐
    [其他范文]热门文章
      下载全文