总结篇--反向查找函数使用终极帖
点击上方
蓝色
文字 关注我们吧!
送人玫瑰,手有余香,请将文章分享给更多朋友
动手操作是熟练掌握EXCEL的最快捷途径!
大家都知道VLOOKUP函数是使用最广泛的EXCEL查找函数。它能应对绝大多少我们遇到的查找问题。但当遇到反向查找是,VLOOKUP函数就需要借助其它函数,例如IF函数,CHOOSE函数来帮助他实现反向查找功能了。
那么,今天我就为大家总结一下,哪些函数(组合)可是实现反向查找的功能。
VLOOKUP函数+IF函数
我们都知道,Lookup_value必须要在查找区域的第一列。当Lookup_value不在查找区域的第一列,同时,表格的结构又不允许我们改变结构添加辅助列时,我们就可以使用反向查找这个功能了。
在单元格G2中输入“=VLOOKUP(F2,IF({1,0},$B$2:$B$9,A2:A9),2,0)”并CTRL+SHIFT+ENTER三键回车即可。
详情请参看帖子总结-VLOOKUP函数实用终极帖。
VLOOKUP函数+CHOOSE函数
和第一例类似,也可以利用CHOOSE函数来构建一个新的内存数组,从而达到查询的目的。
在单元格G2中输入“=VLOOKUP(F2,CHOOSE({1,2},$B$2:$B$9,$A$2:$A$9),2,0)”即可。
请注意,这里是{1,2},而不是{1,0},请注意差别。CHOOSE函数中的{1,2}含义是根据索引值(1,2)来选择对应的参数($B$2:$B$9,$A$2:$A$9)。
LOOKUP函数
使用LOOKUP函数的经典公式,也可以实现反向查找的功能。
=LOOKUP(1,0/((条件1)*(条件2)*(条件3)),目标区域或数组)
在单元格G2中输入“=LOOKUP(1,0/($B$2:$B$9=F2),$A$2:$A$9)”即可。
详情请参看帖子总结篇-LOOKUP函数实用终极帖。
INDEX函数+MATCH函数
这个组合是经典组合。利用MATCH返回查找值在所在列的位置,利用INDEX函数返回对应查找列的值。
在单元格G2中输入“=INDEX($A$2:$A$9,MATCH(F2,$B$2:$B$9,0))”即可。
详情请参看帖子【MATCH函数】和【INDEX函数】实现双条件查询和你会使用【INDEX函数】吗?
OFFSET函数+MATCH函数
这对组合也是一对经典组合。原理和INDEX函数+MATCH函数类似。MATCH函数提供位置信息,OFFSET函数进行偏移并取值。
在单元格G2中输入“=OFFSET(A1,MATCH(F2,$B$2:$B$9,0),)”即可。
详情请参看帖子最全的OFFSET函数应用集合,收藏这一篇就够了。
INDIRECT函数+MATCH函数
这个组合很少见到,但却为我们提供了一种思路。同时,也说明了INDIRECT函数的应用是多么地广泛!
在单元格G2中输入“=INDIRECT("A"&MATCH(F2,$B$1:$B$9,0))”即可。
思路:
MATCH函数返回查找值在所在列的位置
INDIRECT函数返回目标值
给大家提一个小问题:请注意此方法中MATCH函数的第二个参数是$B$1:$B$9,而前面几个例子中都是$B$2:$B$9,这是为什么?
-END-
长按下方二维码关注EXCEL应用之家
面对EXCEL操作问题时不再迷茫无助
推荐阅读:
戳原文,更有料!免费模板文档!