范围内第 N 最大值的索引

范围内第 N 最大值的索引

我有一系列可能包含重复项的值。它看起来像这样:

    A B C D
  ----------
1  23 1 
2  12 2
3  23 3
4  36 4
5  19 5

我想显示 3 个最大的值,但我想显示 B 中的对应值,而不是 A 中的值。我可以使用以下方法从 A 中找到 3 个最大的值

=LARGE(A1:A5,1)   # returns 36, I need it to return 4
=LARGE(A1:A5,2)   # returns 23, I need it to return 1
=LARGE(A1:A5,3)   # returns 23, I need it to return 3

有什么办法吗?我考虑过基于 RANK 函数的某些方法,但是 RANK 对相等的项目返回相同的排名,所以我不确定该怎么做。

答案1

使用D2:D4您的 3 个LARGE公式来获取36,,然后在 E2 中使用此2323数组公式”从 B1:B5 获取相应的值,同时考虑可能的重复项:

=INDEX(B$1:B$5,SMALL(IF(A$1:A$5=D2,ROW(A$1:A$5)-ROW(A$1)+1),COUNTIF(D$2:D2,D2)))

已确认CTRL++SHIFTENTER

答案2

使用过滤器怎么样?您可以按从大到小的顺序排序(保持 A 和 B 元素之间的对应关系),然后轻松读取 B 列前三个单元格的值

相关内容