排名重复的文本值

时间:2014-07-28 23:27:44

标签: excel indexing match ranking countif

环顾四周,但无法完成这项工作。我认为这很容易,但匹配和索引功能让我感到很沮丧。

这是一个例子。我有三列数据:

Name    Date    Score Desired Output 
Peter   8/11    80        Wrong Day 
John    8/12    50        1 
Peter   8/12    40        1 
Sarah   8/12    30        1 
Peter   8/12    20        2 
Lindsay 8/12    5         1 
Peter   8/12    3         3 

查看所需的输出。简而言之,我想查看列表(我按分数对其进行了排序)并给出了属于一个人的所有分数,即所需日期的分数等级。因此,我想在一天(在这种情况下为8/12)查看所有人,然后按人分组,并返回该人的分数等级。我知道任何一个“1”是该人在8月12日的最高分。

有什么想法吗?宁愿不使用数据透视表。想要D列的公式

1 个答案:

答案 0 :(得分:0)

在单元格D2中并向下复制(调整范围以适合您的实际数据):

=IF(B2=--"8/12",MATCH(C2,INDEX(LARGE(INDEX(($A$2:$A$8=A2)*($B$2:$B$8=--"8/12")*$C$2:$C$8,),ROW($1:$99)),),0)+COUNTIFS($A$1:$A1,A2,$B$1:$B1,--"8/12",$C$1:$C1,C2),"Wrong Day")

如果您有一个要输入所需日期的单元格,请将--"8/12"的所有实例替换为包含日期的单元格引用。如果您这样做,请确保使用绝对引用$

如果一天和一个人可以拥有超过99行,请增加ROWS($1:$99),这样99就足够大,可以容纳一天和一个人的最大行数。

公式的COUNTIFS部分用于打破平局,因此后续相同的数字将排名较低(数字较高),而不是排名相同。例如,如果Peter上的第二个8/12条目也是40而不是20,则公式仍会将该行填充为2而不是将排名等级设为1