Excel怎样使用SORTBY函数实现多条件自定义动态排序

碧海醫心

碧海醫心

2026-07-23

298人浏览

原创

excel做多条件自定义动态排序,直接用 sortby 最省事:第一个参数放你要输出的全部数据,后面按顺序挨个写排序依据列和对应的升降序规则。比如想先按“地区”升序、再按“年龄”降序,公式直接写成 =sortby(a2:c9,a2:a9,1,c2:c9,-1) 就行,源数据改了,右侧结果会自动同步刷新。

1. 先把源数据整理成连续区域

源数据最好带上表头,中间别插空行。操作的时候先点右侧放结果区域的左上角空白单元格,再输入 SORTBY 公式;左边原始数据表不要动,右边多留够空位,避免动态数组溢出的时候被旧内容挡住报错。

Excel SORTBY 函数按指定列排序并输出动态数组结果

2. 写清 SORTBY 的基本参数

SORTBY 最常用的结构是 =SORTBY(要返回的数据区域, 排序依据区域1, 1或-1, 排序依据区域2, 1或-1)。其中 1 代表升序,-1 代表降序。注意排序依据区域的行数必须和返回区域一致,不然公式很容易返回错误值。

如果单条件按年龄从小到大排,可以写 =SORTBY(D2:E9,E2:E9);要按温度从高到低排,就把排序顺序参数写成 -1。先把单条件的公式跑通,再加第二个排序条件,排查问题要稳得多。

3. 多条件排序按优先级从左到右写

多条件排序的核心就是参数的先后顺序。这个操作输入公式的时候先写第一个排序依据和对应的升降序参数,紧接着写第二个排序依据和它的升降序就行,比如先按地区升序,再按年龄降序,可以写成 =SORTBY(tbl_NameAge2,tbl_NameAge2[地区],1,tbl_NameAge2[年龄],-1)

Excel SORTBY 按地区升序再按年龄降序实现多条件排序

Python对Excel操作详解 中文WORD版
Python对Excel操作详解 中文WORD版

本文档主要介绍如何通过python对office excel进行读写操作,使用了xlrd、xlwt和xlutils模块。另外还演示了如何通过Tcl tcom包对excel操作。感兴趣的朋友可以过来看看

下载

4. 自定义顺序用 MATCH 做排序依据

如果不想按字母、数字的默认规则排序,想按“东部、西部、北部、南部”这种业务固定的自定义顺序排,可以把自定义序列交给 MATCH 处理。逻辑很简单:先用 MATCH 把每一行的地区名转成1、2、3、4这样的序号,再让 SORTBY 按这个序号排序。

写公式的时候先把带 MATCH 的自定义规则写好,放到 SORTBY 的排序依据参数位置就行。这个设置的示例写法是:=SORTBY(A2:C9,MATCH(A2:A9,{"东部","西部","北部","南部"},0),1,C2:C9,-1)。运行后结果会先按你指定的地区顺序排,同一个地区里再按年龄从大到小排。

Excel SORTBY 与动态数组示例用于检查排序结果自动溢出

5. 检查溢出区域和排序结果

公式输完之后,选中输公式的单元格,看Excel自动用蓝色边框标出的整块溢出结果区。这个设置里的蓝色框内容不能单独修改某个单元格,要调整排序规则,直接回到左上角的公式单元格改 SORTBY 参数就行。要是看到 #SPILL! 报错,先把结果区里的旧内容全清空就好。

Excel SORTBY 排序结果区域和公式栏用于核对动态排序

6. 结果不对时先查三处

排序结果不对的时候,按顺序排查三个地方:首先看排序依据区域有没有选错列,再看升降序里的 1-1 有没有写反,最后核对自定义序列里的文字是不是和源表完全一致。要是地区名多了空格、全角半角不匹配,MATCH 很可能识别不到正确的顺序。这些细节核对完没问题后,公式就留在结果区首格,后面只要维护源数据就行。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

excel

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
sort排序函数用法
sort排序函数用法

sort排序函数的用法:1、对列表进行排序,默认情况下,sort函数按升序排序,因此最终输出的结果是按从小到大的顺序排列的;2、对元组进行排序,默认情况下,sort函数按元素的大小进行排序,因此最终输出的结果是按从小到大的顺序排列的;3、对字典进行排序,由于字典是无序的,因此排序后的结果仍然是原来的字典,使用一个lambda表达式作为key参数的值,用于指定排序的依据。

2023.09.04

922

7

excel对比两列数据异同
excel对比两列数据异同

Excel作为数据的小型载体,在日常工作中经常会遇到需要核对两列数据的情况,本专题为大家提供excel对比两列数据异同相关的文章,大家可以免费体验。

2023.07.25

2848

7

excel重复项筛选标色
excel重复项筛选标色

excel的重复项筛选标色功能使我们能够快速找到和处理数据中的重复值。本专题为大家提供excel重复项筛选标色的相关的文章、下载、课程内容,供大家免费下载体验。

2023.07.31

1477

5

excel复制表格怎么复制出来和原来一样大
excel复制表格怎么复制出来和原来一样大

本专题为大家带来excel复制表格怎么复制出来和原来一样大相关文章,帮助大家解决问题。

2023.08.02

1387

3

excel表格斜线一分为二
excel表格斜线一分为二

在Excel表格中,我们可以使用斜线将单元格一分为二。本专题为大家带来excel表格斜线一分为二怎么弄的相关文章,希望可以帮到大家。

2023.08.02

1342

3

excel斜线表头一分为二
excel斜线表头一分为二

excel斜线表头一分为二的方法有使用合并单元格功能方法、使用文本框功能方法、使用自定义格式方法。本专题为大家提供excel斜线表头一分为二相关的各种文章、以及下载和课程。

2023.08.02

532

5

绝对引用的输入方法
绝对引用的输入方法

绝对引用允许在公式中引用一个固定的单元格,而不会随着公式的复制和粘贴而改变引用的单元格。本专题为大家提供绝对引用相关内容的文章,大家可以免费体验。

2023.08.09

4959

7

java导出excel
java导出excel

在Java中,我们可以使用Apache POI库来导出Excel文件。本专题提供java导出excel的相关文章,大家可以免费体验。

2023.08.18

2563

6

excel输入值非法
excel输入值非法

在Excel中,当输入的数值非法时,有以下多种处理方法。本专题为大家提供excel输入值非法的相关文章,大家可以免费体验。

2023.08.18

1238

3

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Excel 教程
Excel 教程

共162课时 | 39.5万人学习

成为PHP架构师-自制PHP框架
成为PHP架构师-自制PHP框架

共28课时 | 3.2万人学习