6

我在一个聚会上运行一个 Nerf 联盟,并希望我的电子表格显示前五名参赛者。

参赛者可以无限次参赛,并且只计算他们的最高分。参赛作品正在谷歌表格上收集,前 5 名将发布在信息亭屏幕上

以下是一些示例数据:

- **全名,分数**
- 测试测试,3
- 测试2 测试2,1
- 测试3 测试3,10
- 测试4 测试4,3
- 测试5 测试5,42
- 测试5 测试5,500
- 测试6 测试6,20

这是我到目前为止的公式(感谢tigeravatar):

=INDEX($A$2:$A$28,MATCH(1,INDEX(($B$2:$B$28=LARGE($B$2:$B$28,ROWS(I$1:I1)))*(COUNTIF(I$1:I1,$A$2:$A$28)=0),),0))

此公式显示所有最大值 - 例如,如果一个人有 5 个条目高于其他所有人,则它们都将被计算在内。

“前五名”必须只显示五个不同参赛者得分最高的条目。

我需要做什么才能只显示每个参赛者提供的最上面的条目?

4

2 回答 2

7

似乎@AdamL 提供的公式符合要求:

=QUERY(A2:B28,"select A, max(B) group by A order by max(B) desc limit 5 label max(B) ''",0)
于 2015-09-25T21:38:33.457 回答
-1
=QUERY(A2:B28,"select A, max(B) group by A order by max(B) desc limit 5 label max(B) ''",0)

<= 它可以在没有外壳的情况下工作。

如果您在 col A 的单元格中有特殊字符,则函数的输出/结果不正确。

例如,

如果 A1 中的值为 HN_123_1/2,则输出不正确。这里的特殊字符是“_”和“/”。

希望这有帮助。

于 2017-12-28T06:24:49.793 回答