如何使用多个标准进行Vlookup,其中一个标准是最大date?
我有一个数据范围:
ABCDE mx 01Feb2014 c 23 nx 10Apr2014 d 36 nx 10Feb2014 d 39 rx 10May2014 e 43 tz 10Jan2014 d 36 ty 10Jan2014 d 36
现在我想find列E中的值,其中“x”在列B中,“d”是列D,并且在列C中具有最大date,
我尝试:
=INDEX($E:$E,MATCH(1,(($B:$B="x")*($D:$D="d")),0))
但我不知道如何处理最高date标准?
这是一个可以使用聚合函数的解决scheme
有两个部分来解决。
第1部分)查找列B =“x”和列D =“d”的最大date
=AGGREGATE(14,6,$C$2:$C$7/((B2:B7="x")*(D2:D7="d")),1)
这会给你最大的date。
也是一个伟大的video观看,以更好地了解公式如何工作https://www.youtube.com/watch?v=H2XCI8Gvz9k
第2部分)查找可以使用SUMIFS
的值
=SUMIFS($E$2:$E$7,$B$2:$B$7,"x",$D$2:$D$7,"d",$C$2:$C$7, AGGREGATE(14,6,$C$2:$C$7/((B2:B7="x")*(D2:D7="d")),1))
其中第一个公式的部分形成最高date的标准。
您可以根据需要调整范围,但是根据上表得出max date = 10Apr2014和36的结果。
Lookup
仍然可以工作,如果我们build立一个新的列F = concat(B, ":", D, ":", C)
我们正在search的值= concat("x:d:", max(C))
然后我们做lookup
lookup(concat("x:d:", max(C)), F, E)
这都是伪代码,但是这个想法就在那里。 对不起,这是未经testing,因为我没有安装Excel。