如果多个匹配项,MATCH 将产生相同的结果

MATCH produces identical result if multiple matchs

提问人:Reese 提问时间:7/29/2023 最后编辑:Mayukh BhattacharyaReese 更新时间:7/29/2023 访问量:59

问:

致力于自动化我用于工作的电子表格部分,但似乎无法解决这个问题。

https://imgur.com/a/nq3RGLv

在左边,我有车道号和每条车道的计数。在右边,我想有前 6 个最高数字和相应的车道。

我抓住最高的 6 个数字,一直使用到 并将它们插入右侧。=LARGE(B2:B19, 1)=LARGE(B2:B19, 6)

我遇到的问题是当我在 TOP 6 的左列中使用 MATCH 来标记最高数字时。

目前,我在左侧单元格中使用 LANE 10、7、6 等,但如果右侧有两个相同的数字,它只会说同一车道两次。="LANE "&MATCH(E2,B2:B19,0)

所以在我的照片中,D4 应该说 LANE 9 而不是 4。

解决此问题的最佳方法是什么?也许有一个更简单的功能?最好是在稍旧的版本中也能使用的东西,我现在在 2016 年。

我真的很感激我能得到的任何帮助。干杯

匹配 Excel-2016

评论


答:

0赞 Florin 7/29/2023 #1

请在 D2 中尝试此公式

="Lane"&" "&SMALL(IF($B$2:$B$19=E2,ROW($A$2:$A$16)-ROW($A$2)+1),COUNTIF($E$2:E2,E2))

这将在excel 2016中起作用,如果在这个公式中有什么你不明白的地方,请告诉我,所以我会解释你

0赞 Mayukh Bhattacharya 7/29/2023 #2

另一种使用函数的替代方法,自 Excel 2010+ 起可用。AGGREGATE( )

enter image description here


• 细胞中使用的配方D2

=IF(E2="","","LANE "&AGGREGATE(15,7,$A$2:$A$19/(E2=$B$2:$B$19),COUNTIFS(E$2:E2,E2)))

• 细胞中使用的配方E2

=IF(ROWS(E$1:E1)>6,"",AGGREGATE(14,7,$B$2:$B$19/($A$2:$A$19<>""),ROW($ZZ1)))

但是,这样做会更容易MS365

=TAKE(SORT(HSTACK("LANE "&A2:A19,B2:B19),2,-1),6)