将下一个匹配返回到列中的相等值
我经常需要search列以find匹配的值,然后返回相应的值。 我的问题是, INDEX
和MATCH
总是返回列中的第一个值。
EX。 我有7个汽车经销商,这是上个月的销售。 奥斯陆和柏林在C
列出售同样的金额和INDEX(D:E,MATCH(B1,E:E,0),1))
将返回D列的第一击。
ABCDE rank Sales Delaer 1 409 London | Tokyo 272 2 272 Tokyo | London 409 3 257 Hawaii | oslo 248 4 255 Stockholm | numbai 240 5 248 Oslo | Berlin 248 6 248 Oslo | hawaii 257 7 240 Numbai | Stockholm 255
目前我最好的解决方法是首先findB
每个值与MATCH(B1,E:E,0)
并将其添加到新列( column F
)。 然后我可以在下一列添加另一个公式,这就是我目前必须做的事情: =IF(F2=F1;MATCH(F2;INDIRECT("F"&(1+F1)):$F$7;0))+F2
有没有更好的方法呢?
在B2中使用下面的标准公式,
=IFERROR(LARGE(E$2:E$8, ROW(1:1)), "")
根据需要填写。
在C2中使用下面的标准公式,
=INDEX(D$2:D$8, AGGREGATE(15, 6, ROW($1:$7)/(E$2:E$8=B2), COUNTIF(B$2:B2, B2)))
根据需要填写。
[可选] – 修复A列中的排名
在A2中使用下面的公式,
=SUMPRODUCT((B$2:B$8>=B2)/(COUNTIFS(B$2:B$8, B$2:B$8&"")))
根据需要填写。