Excel中vlookup与lookup函数的区别与使用方法

如题所述

第1个回答  2019-07-02

1如上图:根据员工编号所在行的代码,查找姓名行对应的姓名,两者是水平的关系,因此应该使用HLOOKUP函数。
2与前一例不同,上图右侧部分是根据员工编号所在列的代码,查找姓名列对应的姓名,两者是垂直的关系,因此应该使用VLOOKUP函数。
3语法:
VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)
HLOOKUP(lookup_value,table_array,row_index_num,range_lookup)
从语法上看,两者的参数完全一样,即:查找值,所在的行或列,行或列的第几个值,查找类型
注意这里的查找类型:有TRUE
和FALSE
2种
如果为TRUE
或省略,则返回精确匹配值或近似匹配值。也就是说,如果找不到精确匹配值,则返回小于
lookup_value
的最大数值,table_array
第一列中的值必须以升序排序;否则
VLOOKUP
可能无法返回正确的值。
如果为
FALSE,VLOOKUP
将只寻找精确匹配值。在此情况下,table_array
第一列的值不需要排序。如果
table_array
 第一列中有两个或多个值与
lookup_value
匹配,则使用第一个找到的值。如果找不到精确匹配值,则返回错误值
#N/A。
看以下实例说明:
4=VLOOKUP(A12,A2:C10,2)
使用近似匹配搜索
A
列中的值
1,在
A
列中找到小于等于
1
的最大值
0.946,然后返回同一行中
B
列的值。(2.17)
 =VLOOKUP(A13,A2:C10,3,TRUE) 
使用近似匹配搜索
A
列中的值
1,在
A
列中找到小于等于
1
的最大值
0.946,然后返回同一行中
C
列的值。(100)
 =VLOOKUP(A14,A2:C10,3,FALSE)
 
 
使用精确匹配在
A
列中搜索值
0.7。因为
A
列中没有精确匹配的值,所以返回一个错误值。(#N/A)
 =VLOOKUP(A15,A2:C10,2,TRUE)
 
 
使用近似匹配在
A
列中搜索值
0.1。因为
0.1
小于
A
列中最小的值,所以返回一个错误值。(#N/A)
 =VLOOKUP(A16,A2:C10,2,TRUE)
 
 
使用近似匹配搜索
A
列中的值
2,在
A
列中找到小于等于
2
的最大值
1.29,然后返回同一行中
B
列的值。(1.71)
5 HLOOKUP函数的各项要求与VLOOKUP一致,因此可以类推。

相似回答