首页  >  Word

Excel逆向查询的4个妙招

Word 2024-04-14 17:00:10 38

今天咱们说说逆向查询的问题。
所谓逆向查询,就是关键字在数据表的右侧,而要得到内容在数据表的左侧。

 

方法一

使用IF函数重新构建数组。
G2使用公式为:
=VLOOKUP(F2,IF({1,0},B2:B10,A2:A10),2,0)

这个公式的用法在之前的内容中咱们曾经讲过,就是用IF({1,0},B2:B10,A2:A10),返回一个姓名在前,工号在后的多行两列的内存数组,使其符合VLOOKUP函数的查询值处于查询区域首列的条件,再用VLOOKUP查询即可。
该函数使用比较复杂,运算效率比较低。
与之类似的还有使用CHOOSE函数重新构建数组,就是把公式中的IF({1,0},部分换成CHOOSE({1,2},这个也是换汤不换药而已。

 

方法二

INDEX+MATCH结合。
G2使用公式为:
=INDEX(A2:A10,MATCH(F2,B2:B10,))

公式首先使用MATCH函数返回F2单元格姓名在B2:B10单元格中的相对位置6,也就是这个区域中所处第几行。
再以此作为INDEX函数的索引值,从A2:A10单元格区域中返回对应位置的内容。
这个公式是最常用的查询公式之一,看似繁琐,实际查询应用时,由于其组合灵活,可以完成多个方向的查询。操作灵活方便。

 

方法三

所向披靡的LOOKUP函数。
G2使用公式为:
=LOOKUP(1,0/(F2=B2:B10),A2:A10)

这是非常经典的LOOKUP用法。
首先用F2=B2:B10得到一组逻辑值,再用0除以这些逻辑值,得到由0和错误值组成的内存数组。再用1作为查询值,在内存数组中进行查询。
如果 LOOKUP 函数找不到查询值,则它与查询区域中小于或等于查询值的最大值匹配,因此是以最后一个0进行匹配,并返回A2:A10中相同位置的值。
该函数使用简便,功能强大,公式书写也比较简洁。
如果有多条符合条件的结果,前三个公式都是返回首个满足条件的值,而第四个公式则是返回最后一个满足条件的值,这一点大家在使用时还需要特别注意。

 

方法四

初出茅庐的XLOOKUP函数。
G2使用公式为:
=XLOOKUP(F2,B2:B10,A2:A10)

XLOOKUP函数目前可以在Office 365以及Excel 2021版本中使用,第一参数是查询的内容,第二参数是查询的区域,查询区域只要选择一列即可。第三参数是要返回哪一列的内容,同样也是只要选择一列就可以。
公式的意思就是在B2:B10单元格区域中查找F2单元格指定的姓名,并返回A2:A10单元格区域中与之对应的姓名。

逆向查询
版权声明

本文来自投稿,不代表本站立场,转载请注明出处。

分享:

扫一扫在手机阅读、分享本文