VLookup函数是一个数据查找函数,用于查找特定或指定的单元格数据!下面先介绍其用法!
一、功能
在表格的首列查找指定的数据,并返回指定的数据所在行中的指定列处的数据。
二、语法
标准格式:
VLOOKUP(lookup_value,table_array,col_index_num , range_lookup)
三、语法解释
VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)可以写为:VLOOKUP(需在第一列中查找的数据,需要在其中查找数据的数据表,需返回某列值的列号,逻辑值True或False);
①Lookup_value为“需在数据表第一列中查找的数据”,可以是数值、文本字符串或引用。
②Table_array 为“需要在其中查找数据的数据表”,可以使用单元格区域或区域名称等。
⑴如果 range_lookup 为 TRUE或省略,则 table_array 的第一列中的数值必须按升序排列,否则,函数 VLOOKUP 不能返回正确的数值。如果 range_lookup 为 FALSE,table_array 不必进行排序。
⑵Table_array 的第一列中的数值可以为文本、数字或逻辑值。若为文本时,不区分文本的大小写。
③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!。
④Range_lookup 为一逻辑值,指明函数 VLOOKUP 返回时是精确匹配还是近似匹配。如果为 TRUE 或省略,则返回近似匹配值,也就是说,如果找不到精确匹配值,则返回小于lookup_value 的最大数值;如果 range_value 为 FALSE,函数 VLOOKUP 将返回精确匹配值。如果找不到,则返回错误值 #N/A。
以上为英文解释,对于新手而言,可能无法完全掌握,下面以中文作为解释!
VLOOKUP(所查找的第一列的特定数据,数据区域,返回第几列的数据, 逻辑值),该函数以表格中的第一列为查找对象,查找第一列指定的数据,如果找到,则返回该指定数据所对应行的任何一个列的数据!
四、应用举例
看下图
在D12单元格的FX函数输入区域中输入如下图的函数代码,即得如下图的结果
上述的代码“=VLOOKUP(20080301,A1:D9,2,TRUE)”的意思是,在第一列中查找编号为20080301的数据,所要查找的数据区域为A1:D9,如果找到20080301,则返回与20080301对应的(第)2列的数据,即姓名,在这里为“小昆虫”!
2,代表返回第2列的数据;如果改为“=VLOOKUP(20080301,A1:D9,3,TRUE)”,返回的是第3列的数据,即工资,对应于20080301编号的工资,就是1600;如果3改为4,则返回的值应该是“财务室”;
上述的代码,前三个参数是可变的,可以根据需要适当修改!第四个参数是逻辑值,其值只有两个,一个是TRUE,一个是False;
在什么情况下该什么哪个逻辑值呢?
先举个例子,假如让您在数万条记录的表格中查找给定编号的某个人,假如编号已按由小到大的顺序排序,您会很轻松地找到这个人;假如编号没有排序,您只好从上到下一条一条地查找,相当地费事。
用VLOOKUP查找数据也是这样,当第一列已排序,第四个参数用TRUE(或确省),Excel会很轻松地找到数据,效率较高。当第一列没有排序,第四个参数用FALSE,Excel会从上到下一条一条地查找,效率较低。
俺个人认为,若要精确查找数据,由于计算机运算速度很快,可省略排序操作,第四个参数直接用FALSE即可。