Excel 按条件排列

Excel 按条件排列,excel,excel-formula,Excel,Excel Formula,我正在寻找一个公式,它可以对范围子集中的值进行排序 假设A列是部门,B列是价值 我想要一个公式,它可以将这个值与这个偏差的所有其他值进行排序 我已经试过了 {=rank(值,if(myrange=condition,myrange),0)} 不起作用 我已经成功地完成了oposite-通过以下方式检索某个等级的值: {=small(如果(myrange=condition,myrange),我想要的排名)} 我不明白为什么我的第一个公式失败了 例外的结果是它的值子集的值的排名,即条件为真的所有单

我正在寻找一个公式,它可以对范围子集中的值进行排序

假设A列是部门,B列是价值

我想要一个公式,它可以将这个值与这个偏差的所有其他值进行排序

我已经试过了
{=rank(值,if(myrange=condition,myrange),0)}
不起作用

我已经成功地完成了oposite-通过以下方式检索某个等级的值:

{=small(如果(myrange=condition,myrange),我想要的排名)}

我不明白为什么我的第一个公式失败了

例外的结果是它的值子集的值的排名,即条件为真的所有单元格。

对于这种情况(对数据子集进行排名),我发现使用
SUMPRODUCT
更容易:

=SUMPRODUCT(($A$2:$A$12=A2)*(B2<$B$2:$B$12))+1
=SUMPRODUCT(($A$2:$A$12=A2)*(B2对于此类场景(对数据子集进行排序),我发现使用
SUMPRODUCT
要容易得多:

=SUMPRODUCT(($A$2:$A$12=A2)*(B2<$B$2:$B$12))+1
=SUMPRODUCT($A$2:$A$12=A2)*(B2
尽管Excel有一个
RANK
函数,但没有
RANKIF
函数可以使用 执行条件排名。但是,您可以轻松创建 使用
COUNTIFS
函数进行条件
RANK


一些样本数据:

| Dep | Val |
|-----|-----|
| A   | 5   |
| A   | 3   |
| A   | 6   |
| A   | 6   |
| B   | 3   |
| B   | 8   |
| B   | 2   |
| C   | 9   |
| C   | 5   |
| C   | 7   |

让我们把
COUNTIFS
放在那里:

C2
中的降序公式:

=COUNTIFS($A$2:$A$11,A2,$B$2:$B$11,">"&B2)+1
D2
中用于升序的公式:

=COUNTIFS($A$2:$A$11,A2,$B$2:$B$11,"<"&B2)+1
=COUNTIFS($A$2:$A$11,A2$B$2:$B$11,”
尽管Excel有一个
RANK
函数,但没有
RANKIF
函数可以使用 执行条件排名。但是,您可以轻松创建 使用
COUNTIFS
函数进行条件
RANK


一些样本数据:

| Dep | Val |
|-----|-----|
| A   | 5   |
| A   | 3   |
| A   | 6   |
| A   | 6   |
| B   | 3   |
| B   | 8   |
| B   | 2   |
| C   | 9   |
| C   | 5   |
| C   | 7   |

让我们把
COUNTIFS
放在那里:

C2
中的降序公式:

=COUNTIFS($A$2:$A$11,A2,$B$2:$B$11,">"&B2)+1
D2
中用于升序的公式:

=COUNTIFS($A$2:$A$11,A2,$B$2:$B$11,"<"&B2)+1

=COUNTIFS($A$2:$A$11,A2$B$2:$B$11,”很好,相同的结果,不同的答案。但这使用数组。我将这一个标记为答案,但您的两个解决方案都有效。TY。记住两种方法。很好,相同的结果,不同的答案。虽然这使用数组。我将这一个标记为答案,但您的两个解决方案都有效。TY。记住两种方法都有效。