各位小伙伴们,大家好啊!今天咱们说说逆向查询的问题。
什么是逆向查询呢?所谓逆向查询,即通过查找后面数据列的值返回前面列的数据。
比方说下图中,要通过学生姓名查找学号,或者通过联系电话查找姓名、学号都属于逆向查询。
本期教程我给大家总结了3种方法,看看哪个是你的菜~
▶1.INDEX+MATCH组合查询
本例中我们使用INDEX+MATCH组合查询小美的学号,可以使用下面的公式:
=INDEX(A:A,MATCH(E3,B:B,0))
先用MATCH函数找到小美在B列中的行号,再通过INDEX函数返回小美所在行A列(即学号那一列)的值。
INDEX函数的作用是返回查找区域对应行和列的值,如果查找区域只有一列,返回值所在列可以省略。它可以表示为【=INDEX(查找的区域,返回值所在行,返回值所在列)】
MATCH函数的作用是返回查找区域内查找值的行号。它可以表示为【= MATCH(要找谁,查找区域,匹配方式)】
▶2.LOOKUP函数查询
在本例中我们使用LOOKUP函数来查询小美的学号,公式如下:
=LOOKUP(1,0/(B3:B8=E3),A3:A8)
他的查询区域【0/(B3:B8=E3)】其中(B3:B8=E3),所有条件满足返回TRUE,否则返回FALSE,
以0/(B3:B8=E3)构建一个0、#DIV/0!组成的数组,避免了查找范围必须升序列排序的弊端。(因为True在运算时当作1,False在运算时当作0,所以0/TRUE返回0,0/FALSE返回#DIV/0!)
再用1作为查找值,即可查找最后一个满足非空单元格条件的记录。
▶3.XLOOKUP函数查询
在本例中我们要通过XLOOKUP函数查询小美的学号,可以使用下面的公式:
=XLOOKUP(E3,B3:B8,A3:A8)
XLOOKUP函数的功能是在某个范围或数组中搜索匹配项,并通过第二个范围或数组返回相应的项。默认情况下使用精确匹配。它通俗的语法是:
【=XLOOKUP(要找谁,在哪里找,要返回哪里的内容) 】
需要注意的是XLOOKUP函数目前可在Excel 2019以及最新版本的WPS表格中使用,使用的时候要考虑一下兼容性。
上面3种方法,大家喜欢哪种呢?在评论区发表一下你的看法吧!