提问人:Reese 提问时间:7/29/2023 最后编辑:Mayukh BhattacharyaReese 更新时间:7/29/2023 访问量:59
如果多个匹配项,MATCH 将产生相同的结果
MATCH produces identical result if multiple matchs
问:
致力于自动化我用于工作的电子表格部分,但似乎无法解决这个问题。
在左边,我有车道号和每条车道的计数。在右边,我想有前 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 年。
我真的很感激我能得到的任何帮助。干杯
答:
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( )
• 细胞中使用的配方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)
评论