LOOKUP(要查找的目标值, 查找的区域, 返回结果的区域)
举例说明:
查找学号为“102”的学生姓名。
公式:=LOOKUP(N4, I4:I8, J4:J8)
查找的目标值:N4
查找区域:I4:I8
返回结果的区域: J4:J8
通过目标值102,lookup函数在查找区域模糊查找最接近该值的所在行,返回结果区域中所在行的值。
查找区域及返回结果区域仅可填入单列。
拓展场景:多条件查询
查询成绩大于95分且等级为A等级的学生姓名。
公式:=LOOKUP(1, 0/((K12:K16>=95)*(L12:L16="A")), J12:J16)
公式释义:
两个条件乘积返回结果:
满足所有条件 → 得到0
不满足条件 → 得到错误值(被LOOKUP忽略)
0 的作用:0/1=0,0/0=错误
1 的作用:
是一个大于0的数
LOOKUP找不到1时,会自动查找小于等于1的最大值
由于我们的数组里只有0(小于1),所以一定会找到0
由于错误值会被公式忽略,因此LOOKUP返回与找到的0在相同位置的返回值。
注意事项:
1. 排序要求
查找区域必须按升序排列。未排序会导致错误结果
建议:使用前先用SORT函数排序数据
2. 查找机制
查找小于或等于lookup_value的最大值
如果lookup_value小于最小值,返回#N/A
查找从区域的最后一行开始向上搜索