大数跨境

sortby函数排序如①第1条件升序,条件2降序,条件3降序;②条件1为升序,条件2降序,条件3升序,①②各怎么排序

sortby函数排序如①第1条件升序,条件2降序,条件3降序;②条件1为升序,条件2降序,条件3升序,①②各怎么排序 浅谈出口账务和excel函数
2026-10-05
6
结论:以第1条件为准,第1条件优先级最高;第2条件次之,第3条件再次。
也就是说:先按第1条件升序排;第1条件相同的,再按第2条件降序排;第1、第2都相同的,再按第3条件降序排。

Excel 的 SORTBY 公式大致为:

```excel
=SORTBY(数据区域, 条件1区域, 1, 条件2区域, -1, 条件3区域, -1)
```

其中:1 表示升序,-1 表示降序。

---

举例

原始数据:

姓名 部门 销售额 年龄
张三 B 200 30
李四 A 150 40
王五 B 300 25
赵六 A 200 35
钱七 B 300 45
孙八 A 200 50

排序条件:

1. 第1条件:部门,升序
2. 第2条件:销售额,降序
3. 第3条件:年龄,降序

公式:

```excel
=SORTBY(A2:D7, B2:B7, 1, C2:C7, -1, D2:D7, -1)
```

排序结果:

姓名 部门 销售额 年龄
孙八 A 200 50
赵六 A 200 35
李四 A 150 40
钱七 B 300 45
王五 B 300 25
张三 B 200 30

---

解释

1. 先看第1条件:部门升序
      所以 A 部门全部排在 B 部门前面。
2. 同部门内看第2条件:销售额降序
      A 部门内销售额是:200、200、150,所以两个 200 在前,150 在后。
      B 部门内销售额是:300、300、200,所以两个 300 在前,200 在后。
3. 销售额相同再看第3条件:年龄降序
      A 部门中,孙八和赵六销售额都是 200,年龄分别是 50、35,所以孙八在前。
      B 部门中,钱七和王五销售额都是 300,年龄分别是 45、25,所以钱七在前。

注意:钱七销售额是 300,比李四的 150 大很多,但因为钱七是 B 部门,李四是 A 部门,第1条件部门升序优先,所以李四仍然排在钱七前面。

所以排序优先级是:第1条件 > 第2条件 > 第3条件。
如果第3条件改为升序,排序优先级仍然不变:

第1条件 > 第2条件 > 第3条件
只是第3条件从“降序”变成“升序”,即:
只有第1条件、第2条件都相同的记录,才按第3条件从小到大排。

公式改为:

```excel
=SORTBY(A2:D7, B2:B7, 1, C2:C7, -1, D2:D7, 1)
```

其中最后一个 1 表示第3条件“年龄”升序。

---

沿用之前的例子,原始数据:

姓名 部门 销售额 年龄
张三 B 200 30
李四 A 150 40
王五 B 300 25
赵六 A 200 35
钱七 B 300 45
孙八 A 200 50

排序条件:

1. 部门升序
2. 销售额降序
3. 年龄升序

排序结果变为:

姓名 部门 销售额 年龄
赵六 A 200 35
孙八 A 200 50
李四 A 150 40
王五 B 300 25
钱七 B 300 45
张三 B 200 30

---

解释:

1. 先按部门升序:A 部门全部排在 B 部门前面。
2. 同部门内按销售额降序:
   · A 部门:200、200、150,所以两个 200 在前,150 在后。
   · B 部门:300、300、200,所以两个 300 在前,200 在后。
3. 销售额相同再看年龄升序:
   · A 部门两个 200:赵六 35 岁、孙八 50 岁,升序后赵六在前。
   · B 部门两个 300:王五 25 岁、钱七 45 岁,升序后王五在前。

所以,第3条件为升序时,只是在第1、第2条件都相同的小组内,把年龄小的排前面。
第1条件、第2条件的优先级不会改变。

【声明】内容源于网络
0
0
浅谈出口账务和excel函数
1234
内容 1597
粉丝 0
浅谈出口账务和excel函数 1234
总阅读30.4k
粉丝0
内容1.6k