使用 SORT 对结果排序
自动按升序或降序排列溢出范围
使用 SORT 对结果排序 是 CoddyKit 上的免费 Excel Formulas Academy 课时。 这是第 1 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Excel Formulas Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Excel Formulas Academy 课程共包含 4 节课。
认识 SORT 函数
过去,每当数据发生变化时,排序都意味着重新选择数据并点击按钮。而 SORT 函数可以通过公式完成排序,因此源数据发生变化时,顺序会自动更新。
SORT 是一个动态数组函数:您只需在一个单元格中输入一次,结果就会向下(以及向右)溢出到下方单元格中。您再也不必手动重新排序。
=SORT(A2:A10)SORT 的语法
SORT 最多接受四个参数:
- array 要排序的范围或数组
- sort_index 要依据排序的列(或行),从 1 开始计数
- sort_order 1 表示升序,-1 表示降序
- by_col TRUE 表示从左到右排序列,FALSE(默认值)表示从上到下排序行
只有第一个参数是必需的。省略其余参数时,SORT 会按升序排列第一列。
=SORT(array, [sort_index], [sort_order], [by_col])简单的升序排序
假设销售数据位于 A2:A8。要将其从小到大列出,请将 SORT 指向该范围并接受所有默认设置。
公式会将排序后的值向下溢出到一个新的列中。如果 A2:A8 中的数字发生变化,溢出的列表会立即自动重新排序。不需要按钮,也不需要菜单。
=SORT(A2:A8)从大到小排序
要反转顺序,请将 sort_order 设置为 -1。第一个参数保持不变,只需添加降序标志。
这非常适合排行榜或收入最高列表,因为最大值应显示在顶部。
=SORT(A2:A8, 1, -1)对整个表格排序
SORT 不仅限于一列。传入多列范围后,整个表格都会溢出并完成排序,同时保持每一行的完整性。
假设 A2:C20 中包含姓名、地区和销售额。要排列整个表格,请将该范围用作数组。
=SORT(A2:C20)选择排序列
对表格排序时,sort_index 会告诉 SORT 按哪一列排序。它计算的是数组内部的列,而不是工作表上的列。
对于 A2:C20 中的姓名/地区/销售额表,请按销售额(第 3 列)从高到低排序。整行会随其销售额一起移动。
=SORT(A2:C20, 3, -1)按列而不是按行排序
如果数据是沿着一行横向排列,而不是沿着一列向下排列,请将第四个参数 by_col 设置为 TRUE。
这样,SORT 会从左到右重新排列列,而不是从上到下重新排列行。这种情况并不常见,但对于横向布局的数据很有用。
=SORT(B1:G1, 1, 1, TRUE)SORT 会溢出,请预留空间
由于 SORT 会从一个单元格生成多个结果,其下方和旁边的单元格必须为空。如果有任何内容挡路,就会出现 #SPILL! 错误。
请在空白区域输入公式,让数组顺利落下。清除阻挡溢出范围的任何残留值。
=SORT(A2:C20, 3, -1)Google 表格中的 SORT
Google 表格提供相同的 SORT 函数和相同的参数,因此您的公式可以直接迁移。表格还提供较旧的排序范围菜单以及略有不同的旧版行为,但公式形式与 Excel 一致。
请注意:在表格中,您可以添加额外的索引/顺序对来叠加多个排序条件,例如先按地区排序,再按销售额排序。
=SORT(A2:C20, 2, TRUE, 3, FALSE)将 SORT 与其他函数结合
SORT 与其他动态数组函数结合使用时尤其出色。您可以先筛选数据,再对结果排序,全部通过一个公式完成。
这里使用 FILTER 只保留东部地区的行,然后按第 3 列降序排列。输出结果是一个整洁、有序且经过筛选的列表,并且会自动刷新。
=SORT(FILTER(A2:C20, B2:B20="East"), 3, -1)源数据发生变化时
SORT 的真正价值在于它是实时的。向源范围添加新行(或使用整列引用)后,排序结果会立即将其包含在正确的位置。
因此,SORT 非常适合报表和仪表板:新数据到达时它们会自动更新,完全不需要手动重新排序。
=SORT(A2:C100, 3, -1)<p>您想按 <code>A2:C20</code> 中的第 3 列,将表格从大到小排序。哪个公式正确?</p>
您想按第三列从大到小对 A2:C20 中的表格进行排序。哪个公式是正确的?
回顾:使用 SORT 排序
您已经学会,SORT 可以通过公式对数据排序,并自动溢出结果:
=SORT(array)会按升序排列第一列- sort_index 用于选择排序依据的列
- sort_order 使用 1 表示升序,-1 表示降序
- by_col 设置为 TRUE 时会按列而不是按行排序
请为溢出预留空间,并将 SORT 与 FILTER 结合,以生成有序、经过筛选且会自动更新的列表。
=SORT(A2:C20, 3, -1)用 AI 导师学习 Excel — 免费
在浏览器中编写并运行真实代码,获得全天候 AI 导师的即时帮助,并在网页或应用中继续学习。
- 课程
- 30
- 课程
- 120
常见问题解答
「使用 SORT 对结果排序」课时是免费的吗?
是的 — 「使用 SORT 对结果排序」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Excel Formulas Academy 课程的其余内容,请升级到 CoddyKit PRO。 Excel Formulas Academy 课程共包含 4 节课。
「使用 SORT 对结果排序」这节课中我会学到什么?
自动按升序或降序排列溢出范围 你通过在浏览器中直接运行的动手代码来练习 Excel Formulas Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。
学习 Excel Formulas Academy 需要有经验吗?
无需任何先前经验。CoddyKit 上的 Excel Formulas Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 1 节课,共 4 节。
「使用 SORT 对结果排序」课时需要多长时间?
大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。
我能在这节 Excel Formulas Academy 课中编写并运行代码吗?
能。每节 Excel Formulas Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。
此课程中的所有课时
- 使用 SORT 对结果排序
- 使用 SORTBY 按另一列排序
- 使用 SEQUENCE 生成数字
- 使用 RANDARRAY 生成随机数据