MICROSOFT

EP03. “Reverse List 反转列表顺序”

首页 Microsoft 工具 Excel · Data Analysis · Sort · EP03
约 5 分钟· #EP03#Excel#Sort
🔒 登录后可标记已读
  • 想把一份名单整个头尾颠倒过来,翻遍 Ribbon 也找不到「反转」按钮——Excel 压根没有这个一键功能
  • 但靠排序或函数公式一样能做到,而且不止一种做法
  • 辅助列 + 排序是所有版本都能用的老办法;Excel 365/2021 还多一招 SEQUENCE + SORTBY 函数,一条公式动态搞定
  • 学完能快速倒转任何列表顺序,原数据要不要跟着动态更新都有对应方案

重点内容


适用版本

方法一(辅助列 + 排序)桌面版通用;方法二(SEQUENCE / SORTBY)需要 Excel 365 或 2021。


方法怎么选

方法适合场景备注
辅助列 + 排序任何 Excel 版本,一次性反转不需要动态更新要手动加辅助列、手动排序
SEQUENCE + SORTBYExcel 365 / 2021,希望原数据变动时结果自动更新一条公式搞定,结果动态溢出

方法一:辅助列 + 排序(所有版本通用)

示例:A 列是一份姓名列表(A1:A8),要把顺序整个反过来。

  1. 在 B1 输入 1,B2 输入 2
  2. 选中 B1:B2,拖动填充手柄向下拖到 B8,生成 1~8 的编号序列
  3. 点击 B 列中任意一个数字
  4. Data → Sort & Filter → 点击 ZA(降序排列)

结果:因为排序时 A、B 两列会一起被重新排列,B 列编号变成降序(8,7,6...1),A 列的姓名顺序也跟着整个反转过来。

[截图:B 列编号 + 降序排序结果]


方法二:SEQUENCE + SORTBY 函数(Excel 365 / 2021)

  1. 在 B1 输入 =SEQUENCE(8,1,1,1)(参数依次是行数 8、列数 1、起始值 1、步长 1),会自动向下填出 1~8(这个自动溢出多个单元格的特性叫 spilling)
  2. 用 SORTBY 函数把 A 列按 B 列的值降序排:=SORTBY(A1:A8,SEQUENCE(8,1,1,1),-1),最后的 -1 表示降序
  3. 处理更长列表时,把公式里写死的 8 换成实际行数,或用 ROWS(A1:A8) 自动算出行数,避免手动数

函数速查

函数语法用途例子
SEQUENCE=SEQUENCE(rows, [columns], [start], [step])生成等差数字数组=SEQUENCE(8,1,1,1) → 1,2,3...8
SORTBY=SORTBY(array, by_array, [order])按对应范围的值排序=SORTBY(A1:A8, SEQUENCE(8,1,1,1), -1)
ROWS=ROWS(array)返回范围内的行数=ROWS(A1:A8) → 8

学完你会

  • ✅ 用辅助列 + 排序反转任何版本 Excel 里的列表顺序
  • ✅ 用 SEQUENCE + SORTBY 一条公式动态反转列表(Excel 365 / 2021)
  • ✅ 根据列表长度是否会变动,判断该用固定方法还是动态公式

常见错误

  • 方法一里只对 A 列排序、没有连着 B 列一起排(选取范围时漏掉辅助列),导致姓名顺序没有跟着反转
  • SORTBY 的第三个参数(order)忘记写 -1,结果还是升序,没有达到反转效果
  • 列表长度变了却忘记同步调整 SEQUENCE 或 ROWS 里的数字,导致反转的范围跟实际数据对不上

Sources

Blog / Website:

  1. Reverse List