我试图从值列表中获取排名,但我希望排名基于列表的唯一版本。我想做的是像
= RANK.EQ(值,UNIQUE(list_of_values))
我无法找到如何获得公式中的唯一值。我在how to output unique values to a new row看到了答案,但我不需要打印出值,所以我希望有一个更简单的解决方案。
例如,使用像
这样的列表
|Week Ending|
|10/10/13|
|10/10/13|
|10/10/13|
|10/17/13|
我最接近的是RANK.EQ(value,list_of_values,1),它给了我
|Week Ending|Week Number|
|10/10/13| 1|
|10/10/13| 1|
|10/10/13| 1|
|10/17/13| 4|
我正在寻找的是
|Week Ending|Week Number|
|10/10/13| 1|
|10/10/13| 1|
|10/10/13| 1|
|10/17/13| 2|
编辑:
我最初没有澄清这一点,但我的价值观不一定按照排序顺序排列。
答案 0 :(得分:2)
对于此特定示例,WEEKNUM()
可用于创建日期的有效排名:
=WEEKNUM(value, list_of_values, 1) + 1 - WEEKNUM(MIN(list_of_values))
这是因为所有日期都发生在一周的同一天,或者同一周内发生的日期被认为具有相同的排名。
“周”可以连接到这些值,以创建“第1周”,“第2周”等输出。
答案 1 :(得分:1)
您可以使用相当简单的公式,使用两列:
假设您的日期在A1:A10
B1
包含以下公式:=RANK(A1,$A$1:$A$10)
将该公式复制到B10
C1
包含以下公式:=B1
C2
包含以下公式:=IF(B2=B1,C1,C1+1)
将该公式复制到C10
您也可以使用RANK.EQ
功能代替RANK
。
答案 2 :(得分:0)
Via Andy G,= WEEKNUM()解决了我的问题。更一般地说,
= WEEKNUM(value,list_of_values,1)+ 1 - WEEKNUM(MIN(list_of_values))
提供可用于制作“第1周,第2周”等标签的数字。