如何对Excel中的不连续区域排序?

Excel学习世界 2024-09-04 22:00:15

统计区域中每一个单元格的排名,最常用的是 rank 函数。但是 rank 函数如何对不连续的区域计算排名呢?

以下是两种常见的方法。

案例:

计算下图 1 中每个销售的业绩排名,效果如下图 2 所示。

解决方案 1:

1. 在 A2 单元格中输入以下公式,其中的查询区域是按住 Ctrl 键的同时用鼠标选取的:

=RANK(C2,C2:C5,C7:C11,C13:C16)

但是出错了。

我们来看 rank 函数的语法就知道出错原因了:

RANK(要排序的数值,排序区域,[排序顺序])

可以看出 rank 的必需参数只有 2 个,而我们的公式中出现了 4 个参数,难怪报错。

找到了原因,我们只需对参数稍作修改就能解决问题:在查询区域外面套个括号,使得不连续的区域变成了一个参数,这样就符合语法要求了。

=RANK(C2,(C2:C5,C7:C11,C13:C16))

下面就是正式的解题步骤。

1. 选中涵盖 A 列所有空单元格的区域 --> 按 Ctrl+G

2. 在弹出的对话框中点击“定位条件”按钮。

3. 在弹出的对话框中选择“空值”--> 点击“确定”

4. 输入以下公式 --> 按 Ctrl+Enter:

=RANK(C2,($C$2:$C$5,$C$7:$C$11,$C$13:$C$16))

公式释义:

计算 C2 单元格的值在区域 ($C$2:$C$5,$C$7:$C$11,$C$13:$C$16) 中的从大到小排名;

* 第二个参数中的所有区域都要绝对引用。

Excel 中还有个排序函数 RANK.AVG,该函数与 rank 的区域是:如果多个值具有相同的排位,则将返回平均排位。

=RANK.AVG(C2,($C$2:$C$5,$C$7:$C$11,$C$13:$C$16))

解决方案 2:

1. 选中 C 列中需要参与排名的不连续区域 --> 按 Ctrl+F3

2. 在弹出的对话框中点击“新建”按钮。

2. 在弹出的对话框中将“名称”设置为“业绩”--> 点击“确定”

3. 点击“关闭”。

4. 重复解决方案 1 中的步骤 1 至 3 --> 输入以下公式 --> 按 Ctrl+Enter:

=RANK(C2,业绩)

0 阅读:6

Excel学习世界

简介:Excel 学习交流