Excel里最有用的函数,往往也最简单。SORT就是典型例子:只给一个参数,它能把一列名单按字母排好;多给两个参数,整张数据表都能排。更省事的是,源数据一变,结果自动跟着更新,不用每次改完数字再手动重排一遍。
![]()
如果你已经在用SORTBY,可能会觉得SORT有点多余——某些场景下SORTBY确实更灵活。但SORT有自己的优势,尤其是想要更短的公式,或者打算把它和别的动态数组函数组合使用时。SORT在Excel 2021、Excel 2024、Microsoft 365以及网页版Excel中均可使用。
SORT返回的是一份排好序的数据副本,不会打乱原始数据。它的语法是:
=SORT(array,[sort_index],[sort_order],[by_col])
- array(必填):要排序的区域或数组。
- sort_index(可选):指定按哪一列或哪一行排序,默认为1。
- sort_order(可选):设定方向,1为升序,-1为降序,默认是1。
- by_col(可选):决定Excel是按行纵向排序(默认),还是按列横向排序。用TRUE表示按列排序。
举个例子。假设有一张名为T_Inventory的Excel表格,其中包含Product列。下面这个公式会按字母顺序返回产品名称:
=SORT(T_Inventory[Product])
就这么多。Excel会自动把结果按字母排好,原表保持不动。整张数据集排序同样简单。假设T_Inventory的第四列是库存数量,要把整张表按数量从高到低排,用:
=SORT(T_Inventory,4,-1)
这里的4告诉Excel按所给数组的第四列排序,-1则指定降序。
有几点需要注意。SORT会把结果溢出到相邻单元格,所以要确保那片区域是空的,否则会报#SPILL!错误。公式要写在Excel表格之外,因为动态数组无法在表格内部溢出;同时要把源表头排除在数组之外,免得Excel把表头也混进记录里一起排序。
SORT公式只对引用范围内的数据生效。如果用固定区域,区域之外新增的条目不会自动出现。改用带结构化引用的Excel表格可以解决这个问题,因为引用会随着新增行自动扩展。
SORT单独用已经够顺手,和其他动态数组函数组合时威力更大。可以先筛选再排序,也可以先整体排序再取出需要的行。假设有一张名为T_Sales的销售表,含Region列,第四列是营收,G1单元格里放着要统计的区域。要返回匹配的销售记录、并按营收从高到低排列,用:
=SORT(FILTER(T_Sales,T_Sales[Region]=G1),4,-1)
FILTER先用G1的值筛出该区域的记录,SORT再把这些记录按第四列降序排列。把G1换成另一个区域,报表自动更新,公式一个字都不用改。
SORT还能配合TAKE函数,从数据集中取出前五条记录:
=TAKE(SORT(T_Sales,4,-1),5)
SORT先把销售记录按第四列从高到低排好,TAKE返回前五行。这种组合的好处是,报表搭一次,重复劳动交给Excel。底层数据一变,公式重新计算,结果随之更新。FILTER在Excel 2021、Excel 2024、Microsoft 365和网页版Excel中可用;TAKE则在Excel 2024、Microsoft 365和网页版Excel中可用。
有时候只按一列排序不够。比如两个人分数相同,可能希望Excel把并列记录再按姓名首字母排。SORT支持多条件,可以为数值相同的记录指定次级规则。
设想有一张名为T_Scores的成绩表,第一列是姓名,第四列是总分。目标是高分在前,同分者按姓名首字母排序。先在F2和F3单元格分别输入4和1,告诉Excel排序条件的先后顺序:先按总分,再按姓名。然后在G2和G3输入-1和1,指定对应的排序方向:分数降序,姓名升序。公式写成:
=SORT(T_Scores,F2:F3,G2:G3)
把条件放在工作表单元格里,意味着改排序规则不用动公式。比如把第一个排序方向改成1,最低分就会排到最前面。熟悉SORTBY的人会发现,这正是两个函数重叠的地方之一,区别主要在于条件的指定方式。
SORT和SORTBY都能返回动态排序的数据,但处理任务的思路不同。当你想按数组自身的某一列排序时,SORT格外方便,简短的语法也让它天然适合与FILTER、TAKE这类函数组合。而当你需要用另一个区域的值来排序一个数组,或者直接引用列名能让公式更好维护时,SORTBY往往是更好的选择。因为SORT用的是位置索引,源表插入或删除列后,可能需要回头检查这些索引。两个函数谁也替代不了谁,弄清差异之后,按数据和想要的结果挑合适的那个就行。
SORT也不是Excel里整理数据的唯一办法。可以用快速填充拆分或合并文本、转置行列,或者用Excel内置的排序工具就地重排数据。哪种方法最好,取决于数据怎么排布,以及你是想改动原始数据,还是想要一份独立、能自动更新的结果。但如果你要的是一份随源数据更新的排序列表,SORT是最简单的工具之一。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.