“0”是使用精确匹配的方式来查找。
3、LOOKUP
下图中,要根据E3单元格中的秘书,在B~C列的对照表中查找与之对应的领导姓名。
F3单元格公式为:
=LOOKUP(1,0/(C3:C8=E3),B3:B8)
LOOKUP函数能够在一行或一列的区域中查询指定内容,并返回另一个行列范围中对应位置的值。
常用写法为:
LOOKUP(1,0/(条件区域=指定条件),要返回结果的区域)
公式中的“1”是要查找的内容。
“0/(C3:C8=E3)”是查找区域的模式化写法,就是0/(条件区域=指定条件)。
先使用等号,将条件区域的内容与查找值进行逐一对比,返回逻辑值TRUE或是FALSE。
再使用0除以逻辑值,在四则运算中,逻辑值TRUE相当于1,FALSE相当于0。相除之后变成了一组错误值和0。
{#DIV/0!;0;#DIV/0!;#DIV/0!;#DIV/0!;#DIV/0!}
也就是条件区域中的某个单元格如果等于查找值,对应的计算结果就是0,其他都是错误值。
LOOKUP在这组内容中查找等于或小于1的数值,由于这组内容中没有1,因此以0进行匹配。0的位置是2,所以最终返回第三参数B3:B8中第2个单元格的内容。
4、INDEX和MATCH
仍以刚刚的数据为例,要根据E3单元格中的秘书,在B~C列的对照表中查找与之对应的领导姓名。
F3单元格公式为:
=INDEX(B2:B8,MATCH(E3,C2:C8,0))
MATCH函数的作用是查找数据在一行或一列中所处的位置。
用法为:
MATCH(要找谁,在哪行或哪列找,精确匹配还是近似匹配)
公式中的MATCH(E3,C2:C8,0)部分,就是精确查找E3单元格中的小袁秘书在C2:C8中所处的位置,结果是3。
INDEX函数的作用,是根据指定的位置信息,返回数据区域中对应位置的内容。
本例中,先用MATCH函数计算出小袁秘书的位置3,再用INDEX函数返回B2:B8区域中第3个单元格的内容。
INDEX+MATCH函数二者组合,能实现任意方向的数据查询。
5、XLOOKUP
如果你使用的是Excel 2019或以上版本,还可以使用XLOOKUP函数。
如下图,F3单元格输入以下公式,向下复制到F4单元格,可以根据E列的姓名查找对应的领导姓名。
XLOOKUP函数的作用是查找数据在一行或一列中所处的位置,并返回与之对应的另一行或另一列中的内容。
常用写法为:
XLOOKUP(要找谁,在哪行或哪列找,返回哪行或哪列,找不到时返回什么)
6、FILTER
使用Excel 2021版本的小伙伴,还可以使用FILTER函数。
如下图,F3单元格输入以下公式,向下复制到F4单元格,可以根据E列的姓名查找对应的领导姓名。
FILTER函数的作用是根据指定的条件,返回数据区域中符合条件的所有记录。
常用写法为:
FILTER(要返回内容的数据区域,筛选条件,找不到时返回什么)
如果有多个符合条件的记录,FILTER函数会将多个结果自动溢出到相邻单元格内。返回搜狐,查看更多