Extract Top 5 Values for Each Group in a List without VBA

时间:2016-01-20 19:58:02

标签: excel indexing excel-formula match vlookup

I would like to develop a formula to construct a table of the top 5 titles / values within multiple groups, preferably without VBA. I have attached an example. Since I am new to this forum and require need at least 10 reputation points to post images, I have uploaded a screenshot to: http://i.imgur.com/v1LAkYk.png *感谢@Scott Craner将图片添加到帖子中!

http://i.imgur.com/v1LAkYk.png.

我已经发现并审核了以下主题:Extracting top 5 maximum values (based on group) in excel。使用公式,我能够从整个列表中取出前5名,但我无法使用IF子句将组排名分开。

提前感谢您的时间和考虑!如果我的要求不清楚和/或您有任何具体问题,请告诉我。感谢任何支持!

1 个答案:

答案 0 :(得分:1)

试试这个:

=Large(If(C:C = "Group 1",A:A),Row(1:1))

这将进入第1组结果的右上角(F3?)。这是一个数组公式,必须使用Ctrl-Shift-Enter确认。

对于E3中的项目:

如果值是唯一的;没有联系:

=INDEX(B:B,MATCH(F3,IF(C:C = "GROUP 1",A:A),0))

如果有可能出现平局,那就会变得更加复杂。

=INDEX(B:B,MATCH(1,IF(C:C = "GROUP 1",IF(A:A = F3,IF(COUNTIF(B:B,$E$2:$E2) = 0,1,0),0),0),0))

两者都是数组公式,必须使用Ctrl-Shift-Enter确认。然后复制下来。

注意:这些数组公式将遍历整个列,这将花费时间。将全列范围限制为实际绝对数据范围将是有利的。例如,如果1000是最后一行,则将C:C更改为$ C $ 3:$ C $ 1000。

有关数组公式的更多信息,请参阅THIS