提起查找函数,大家第一时间想到的肯定是Vlookup,其实大多数人不知道,Lookup才是查找函数之王,它几乎能高效地实现Vlookup函数的所有功能,部分功能是Vlookup函数无法比拟的。
一、语法结构和基本使用方法。
应用场景:当需要查询一行或一列并查找另一行或列中的相同位置的值时。
语法结构:
LOOKUP(lookup_value, lookup_vector, [r]result_vecto)
1、Lookup_value:必须。在向量中搜索的值。
2、Lookup_Vector:必需。只包含一行或一列的区域。此区域中的值必需按照升序排列,否则无法返回正确的结果。文本不区分大小写。
3、result_vector :可选。只包含一行或一列的区域。result_vector 参数必须与 lookup_vector 参数大小相同。其大小必须相同。
易解语法结构:Lookup(查找的值,查找值所在的范围,返回值所在的范围)。
使用形式:
1、向量形式
可使用Lookup的这种形式在一行或一列中搜索值。
方法:
在目标单元格中输入公式:=LOOKUP(H3,A3:A9,C3:C9)。
2、数组形式。
数组是要搜索的行和列中的值的集合。要使用数组,必须对数据排序。其功能一般用Vlookup函数和Hlookup函数来替代,不建议用哪个数组形式。
方法:
在目标单元格中输入公式:=VLOOKUP(H3,B3:C9,2,0)。
二、Lookup函数实现逆向查找功能。
方法:
1、对数据进行升序排序。
2、在目标单元格中输入公式:=LOOKUP(H3,C3:C9,B3:B9)。
3、Ctrl+Enter填充。
备注:
逆向查找之前,首先要对查找的内容进行升序排序,之后进行查找工作。
三、Lookup函数万能查找(单条件、多条件)。
在前面的学习中我们已经知道,Lookup函数想要实现正确的查找,首先要对查找值所在的范围(Lookup函数的第二个参数)进行升序排序。如果不想排序怎么办了?
1、单条件:
方法:
在目标单元格中输入公式:=LOOKUP(1,0/(B3:B9=H3),C3:C9)。
公式解析:
我们先来看,B3:B9=H3,也就是说判断B3:B9中的值是否等于H3,因此判断结果是{0,1,0,0,0,0,0},因为之后第二个值等于H3中的值。{0,1,0,0,0,0,0}作为分母,被0除,得出的记过就是{错误值,0,错误值,错误值,错误值,错误值,错误值}。在这个数组中进行查找,会查找不到,那么将会匹配比1小的最大值,也就是0,所以就查找到了H3对应值的位置。
2、多条件:
方法:
在目标单元格中输入公式:=LOOKUP(1,0/((B3:B9=H3)*(E3:E9=I3)),C3:C9)。
备注:
1、此公式是Lookup函数最经典、最万能的公式。可以归纳为:
=Lookup(1,0/((条件1)*(条件2)……条件N),返回值的范围)。
2、从上述的万能公式中我们可以看出,Lookup不仅可以单条件查找,也可以多条件查找。
四、Lookup函数多层次区间条件查找。
方法:
在目标单元格中输入公式:=LOOKUP(C3,$I$3:$J$6)。
▌觉得不错的话点个关注吧!
有相关问题可在下方评论,不定时解答!