MATCH或VLOOKUP从范围的结尾开始

ass*_*ias 5 excel worksheet-function

我有一张看起来像这样的桌子

 A      B    
ID1  data 123
ID2  data 234
ID1  data 456
ID2  data 567
Run Code Online (Sandbox Code Playgroud)

我试图找到检索data 567ID2 的最佳方法.在ID2上使用MATCH(带选项0)或VLOOKUP(带选项FALSE)可以访问第一条记录,但我想检索最后一条记录.

我正在使用Excel 2010.

ps:我宁愿不使用VBA或操纵数据(排序......).

lor*_*i_m 15

使用A1:B4和D1 ="ID2"中的数据,尝试输入E1:

=LOOKUP(2,1/(A1:A4=D1),B1:B4)
Run Code Online (Sandbox Code Playgroud)

注意:如果查找值大于查找范围中的任何值,LOOKUP将返回最后一个值.任何错误都会被忽略.

  • @assylias,它创建一个数组,该数组对于那些与ID匹配的行具有1(TRUE),对于那些不匹配的行创建错误(#DIV/0!).`Lookup`忽略错误.数组看起来像这样:{#DIV/0 !; 1; #DIV/0 !; 1}并且由于查找值2大于1(这是该数组可以拥有的最大值),它返回最后一个项目. (6认同)