排名前5的公式与使用LARGE的决胜局

时间:2017-10-07 09:05:51

标签: excel excel-formula

我的电子表格包含A列中的项目列表和B列中的值,如:

A        B
item1    2
item2    3
item3    3
item4    5
item5    6

现在在C列中我创建了一个公式,该公式将返回连接到前5个值的名称,如下所示:

=INDEX(A:B;MATCH(LARGE(B:B;1);B:B;0);1)
=INDEX(A:B;MATCH(LARGE(B:B;2);B:B;0);1)
=INDEX(A:B;MATCH(LARGE(B:B;3);B:B;0);1)
=INDEX(A:B;MATCH(LARGE(B:B;4);B:B;0);1)
=INDEX(A:B;MATCH(LARGE(B:B;5);B:B;0);1)

不幸的是,这个公式不是绑定敏感的。因此,如果有多个具有相同值的项目,则只返回其中一个项目的名称。因此,在我的示例中=INDEX(A:B;MATCH(LARGE(B:B;3);B:B;0);1)=INDEX(A:B;MATCH(LARGE(B:B;4);B:B;0);1)将返回相同的值:item2。我需要修改此函数,以便返回不同的值。如果item2item3之前或之后,对我来说无关紧要,我只想让它们都显示出来。任何人都可以帮我这个吗?

1 个答案:

答案 0 :(得分:0)

如果您喜欢使用LARGE(),那么只需删除分数。

使用 A B 列中的数据,在 C1 中输入:

=B1

并在 C2 中输入:

=B2+(COUNTIF($B$1:B1,B2))/100

并向下复制 C2

enter image description here

现在LARGE()可用于 C 列,因为 C 列只有唯一值!