You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Excel 2013:INDEX+MATCH单公式排序重复值问题求助

Excel 2013 解决INDEX+MATCH重复排序值返回重复结果的问题

原公式遇到相同分数的记录时,无法区分不同条目,导致重复返回第一个匹配项。以下是适配Excel 2013的解决方案:

方案一:给分数添加唯一标识(数组公式)

通过给相同分数附加基于行号的小数,让每个分数变成唯一值,确保LARGE能按顺序取到不同记录:

=IFERROR(INDEX($D$3:$D$10,
  MATCH(
    LARGE(IF($C$3:$C$10=$F$3,$B$3:$B$10+(ROWS($B$3:$B$10)+1-ROW($B$3:$B$10))/10000),ROWS($1:1)),
    IF($C$3:$C$10=$F$3,$B$3:$B$10+(ROWS($B$3:$B$10)+1-ROW($B$3:$B$10))/10000),
    0
  )
),"")
  • 使用说明:将公式输入到结果单元格后,按 Ctrl+Shift+Enter 触发数组公式,再下拉填充即可。
  • 原理:相同分数下,行号越小的条目附加的小数越大,LARGE会优先取到行号小的记录,实现相同分数下按原始顺序返回不同姓名。

方案二:结合AGGREGATE与COUNTIF(数组公式)

通过COUNTIF统计当前分数下已返回的记录数,确保相同分数能依次输出:

=IFERROR(INDEX($D$3:$D$10,
  AGGREGATE(15,6,
    (ROW($D$3:$D$10)-ROW($D$2))/
    (($C$3:$C$10=$F$3)*($B$3:$B$10=LARGE(IF($C$3:$C$10=$F$3,$B$3:$B$10),ROWS($1:1))))/
    (COUNTIF($D$3:$D$10,$D$3:$D$10)>=ROWS($1:1)-SUM(--($B$3:$B$10>LARGE(IF($C$3:$C$10=$F$3,$B$3:$B$10),ROWS($1:1)))))
  ,1)
),"")
  • 使用说明:同样需要按 Ctrl+Shift+Enter 输入数组公式,再下拉填充。

两种方案都能解决重复分数下返回重复结果的问题,测试后可根据实际数据选择适配的公式。

内容的提问来源于stack exchange,提问作者Blue Sky

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.11 04:23:15