数组公式如何与排名配合使用?按顺序排列,没有重复的副本。
我有一项任务需要对部门进行排序(通过评估几个指标)。但是有时有些情况是多个部门获得相同的级别(重复级别)。而且,由于排名方面的差距,一个简单的RANK()公式无法正常工作(如果两个部门排名第一,那么下一个部门将排在第三位)。
我已经找到了解决这个小困境的方法- https://www.extendoffice.com/documents/excel/4283-excel-rank-without-skipping-numbers.html
但是我无法确定这个公式是如何工作的...
它如何工作?
{=SUM(IF(A2>$A$2:$A$14,1/COUNTIF($A$2:$A$14,$A$2:$A$14)))+1}
答案 0 :(得分:1)
不是很直观,因为实际上所有数组公式都如此。该说明假定您知道什么是array formula,值的数组以及它们的工作方式。
如果您将公式分解为更多部分,则可能更容易理解:
COUNTIF($A$2:$A$14,$A$2:$A$14)
->创建具有相同维度范围(A2:A14)的广告数组,并为每一行计数找到该行的值的次数,因此,如果您有两个具有相同指示符的部门(在这种情况下,在A列中指定),在两个部门的两行中,公式都会给您 2 ,如果您有三个部门且指标相同,则公式会给出 3 每行,依此类推。IF(A2>$A$2:$A$14,*pt.2*)
->仅使用与A2>An
中对应行的值相对应的值,才返回“过滤”的pt.2值的所有值,因此所评估的指标比您所在的行中的那个。SUM(*pt.3*) + 1
->对pt过滤后的数组的值求和。 3.请注意,如果有多个具有相同指示符的行,则表示pt的三点。 2,它们的权重之和为 1 而不是 n 。 请注意,A2>$A$2:$A$14
将以指标的较小值到较大的值对行进行递增编号,如果您愿意,则可以使用 smaller 代替 grater 放在公式中:A2<$A$2:$A$14