Google Sheets带重复值的Top5列表公式报错求助
Google Sheets 提取含重复分数的Top5姓名列表
需求背景
B列存储分数、C列存储姓名,需生成包含重复高分对应所有姓名的Top5列表(仅提取姓名),已实现Bottom5公式但Top5公式报错,期望结果:
- Steve
- Jaden
- Jack
- Josh
- Cole
最简解决方案:用QUERY函数
直接用QUERY函数一步到位,自动处理重复分数,无需下拉填充,公式:
=ARRAYFORMULA(QUERY({$B$56:$B$70, $C$56:$C$70}, "select Col2 order by Col1 desc limit 5", 0))
逻辑说明
- 将分数列和姓名列拼成临时联合区域
{B列,C列} - 按分数(Col1)降序排序,提取前5条结果中的姓名(Col2)
- 自动包含所有同分数的姓名,直到凑够5个结果,完美匹配需求
原数组公式的修正方案
如果坚持沿用类似Bottom5的数组公式写法,修正后的公式如下(Google Sheets中直接回车即可作为数组公式生效):
=INDEX($C$56:$C$70, LARGE(IF($B$56:$B$70=LARGE($B$56:$B$70, ROWS(E$2:E2)), ROW($B$56:$B$70)-ROW($B$56)+1), ROWS(E$2:E2)-SUM(IF($B$56:$B$70>LARGE($B$56:$B$70, ROWS(E$2:E2)), 1, 0))))
原公式错误原因
- 判断分数范围时误用了
<=(这是Bottom5的低分筛选逻辑),Top5需改为>统计比当前高分更高的人数 - 索引位置计算逻辑未适配降序排序,导致索引值超出有效范围报错
验证结果
使用上述任意公式,最终都会得到期望的Top5姓名列表:
- Steve
- Jaden
- Jack
- Josh
- Cole
内容的提问来源于stack exchange,提问作者user6738171
相关产品推荐
相关产品推荐

