RANK.EQ 函数


本文介绍 Microsoft Excel 中 RANK.EQ 函数的公式语法和用法。

说明

返回一列数字的数字排位。 其大小与列表中其他值相关;如果多个值具有相同的排位,则返回该组值的最高排位。

如果要对列表进行排序,则数字排位可作为其位置。

语法

RANK.EQ(number,ref,[order])

RANK.EQ 函数语法具有下列参数:

  • Number    必需。 要找到其排位的数字。

  • Ref    必需。 数字列表的数组,对数字列表的引用。 Ref 中的非数字值会被忽略。

  • Order    可选。 一个指定数字排位方式的数字。

备注

  • 如果 Order 为 0(零)或省略,Excel 对数字的排位是基于 Ref 为按降序排列的列表。

  • 如果 Order 不为零, Excel 对数字的排位是基于 Ref 为按照升序排列的列表。

  • RANK.EQ 赋予重复数相同的排位。 但重复数的存在将影响后续数值的排位。 例如,在按升序排序的整数列表中,如果数字 10 出现两次,且其排位为 5,则 11 的排位为 7(没有排位为 6 的数值)。

  • 要达到某些目的,可能需要使用将关联考虑在内的排位定义。 在上一示例中,可能需要将数字 10 的排位修改为 5.5。 这可以通过向 RANK.EQ 返回的值添加以下修正系数来实现。 此修正系数适用于按降序排序(order = 0 或省略)和按升序排序(order = 非零值)计算排位的情况。

    关联排位的修正系数 =[COUNT(ref) + 1 – RANK.EQ(number, ref, 0) – RANK.EQ(number, ref, 1)]/2。

    在工作簿中的示例中,RANK.EQ(A3,A2:A6,1) 等于3。 修正系数为 (5 + 1 – 2 – 3)/2 = 0.5,将关联考虑在内的修订排位为 3 + 0.5 = 3.5。 如果数字在 ref 中仅出现一次,此修正系数将为 0,因为无需调整 RANK.EQ 以进行关联。

示例

复制下表中的示例数据,然后将其粘贴进新的 Excel 工作表的 A1 单元格中。要使公式显示结果,请选中它们,按 F2,然后按 Enter。如果需要,可调整列宽以查看所有数据。

数据

7

3.5

3.5

1

2

公式

说明

结果

=RANK.EQ(A2,A2:A6,1)

7 在区域 A2:A6 的表中的排位。 因为 Order 参数 (1) 是非 0 值,按照从小到大的顺序对列表进行排序。

5

=RANK.EQ(A6,A2:A6)

2 在同一表中的排位。 因为省略了 Order 参数,默认情况下按照从大到小的顺序对列表进行排序。

4

=RANK.EQ(A3,A2:A6,1)

3.5 在同一表中的排位。

3