在 excel 里面自动生成序号,常见方案分为填充柄下拉填充,ROW 函数动态序号,COUNTA 函数连续序号,还有新版动态数组 SEQUENCE 函数,不同方案适用场景不一样,填充下拉适合固定静态序号,ROW 和 COUNTA 适合原始数据增删之后序号可以自动更新,SEQUENCE 适合一次性批量生成连续编号,很多用户做台账的时候,手动输入 1 2 3,一旦插入或者删除行,原来序号就全部错乱,还要手动重新修改,这个痛点就是自动生成序号需要解决的核心问题,理解每种方案的特点,就可以根据表格是否经常增删行来选择对应的自动生成序号方式,不需要每次变动数据之后手动重排编号。
方法一 填充柄下拉生成序号
这个是最简单静态序号,适合数据基本不会增删的表格
1 在第一个单元格输入数字 1,第二个单元格输入数字 2
2 同时选中这两个单元格
3 鼠标移动到单元格右下角,光标变成黑色十字填充柄
4 按住鼠标向下拖动,松开之后就会自动按等差生成连续序号
补充操作 也可以输入 1 之后,按住 Ctrl 键拖动填充柄,同样可以递增生成序号
特点 属于静态数值,插入删除行之后序号不会自动更新,需要重新下拉填充
方法二 ROW 函数动态自动生成序号
这个是最常用动态序号,删除插入行之后序号自动重排
1 在序号第一个单元格输入公式 ROW 减 1
这里 ROW 函数作用是返回当前单元格所在行号,如果序号从第二行开始,就写 ROW A2 减 1,这样第一行就会得到数字 1
2 按下回车得到第一个序号
3 选中单元格,下拉填充公式
特点 只要插入或者删除整行,ROW 会读取新的行号,序号自动重新计算
注意 如果中间隐藏行,ROW 依然按照真实行号计算,序号不会跳过隐藏行
方法三 COUNTA 函数 有数据才生成序号
适合原始数据列有空行,只对有内容的行生成序号,空行不编号
1 在序号单元格输入公式 COUNTA 数据列起始单元格 当前单元格上方的数据列区域
2 回车之后下拉填充
特点 只有对应原始单元格填写内容,才会累加序号,空行不会占用编号,适合带空行的登记表
缺点 如果原始数据清空单元格,序号会重新排序
方法四 SEQUENCE 函数批量生成序号
属于新版 excel 动态数组函数,365 和 2021 版本支持
1 在左上角空白单元格输入公式 SEQUENCE 行数
2 回车之后自动溢出全部连续序号,不需要下拉填充
特点 一次性生成大批量序号,属于动态数组,公式简洁,老版本 excel 不支持这个自动生成序号函数
四种自动生成序号方案对比表
| 方案 | 是否动态更新 | 是否支持空行跳过 | 版本要求 | 优点 | 缺点 |
|---|---|---|---|---|---|
| 填充柄下拉 | 否 | 否 | 全部版本 | 操作简单 | 增删行序号错乱 |
| ROW 函数 | 是 | 否 | 全部版本 | 公式简单,自动重排 | 隐藏行依然计数 |
| COUNTA 函数 | 是 | 是 | 全部版本 | 空行不编号 | 清空数据序号变化 |
| SEQUENCE 函数 | 是 | 否 | 365 2021 及以上 | 一键溢出生成 | 老版本无法使用 |
深度进阶要点
如果筛选之后想要可见行重新连续编号,ROW 和 COUNTA 都不能直接实现,需要搭配 SUBTOTAL 函数编写序号公式,筛选隐藏行的时候,可见序号依旧保持连续
如果需要带前缀的自动生成序号,比如编号写成 A001 A002,可以把 ROW 函数和文本拼接,搭配 TEXT 函数补足位数,实现带前缀定长编号
如果复制带 ROW 公式的序号到其他位置,行号会跟着偏移,需要根据新的起始行修改 ROW 的减数
SEQUENCE 函数还可以设置起始数字和步长,不只是默认从 1 开始递增,步长可以改成 2 3,实现间隔编号
【常见问题】
问题 1 excel 自动生成序号方法,插入行之后序号为什么不会自动变
回答 1 如果是填充柄下拉得到的静态序号,本身就不会自动更新,想要插入行之后序号自动重排,需要改用 ROW 函数的 excel 自动生成序号方法,这样增删行之后序号会自动重新计算。
问题 2 excel 自动生成序号方法,筛选之后序号断开怎么办
回答 1 ROW 函数这套 excel 自动生成序号方法会读取真实行号,筛选隐藏行之后序号就会跳号,想要筛选之后可见行序号连续,改用 SUBTOTAL 搭配的自动生成序号方法。
问题 3 excel 自动生成序号方法,老版本可以用 SEQUENCE 吗
回答 3 不可以,SEQUENCE 是新版动态数组函数,老版本 excel 没有这个 excel 自动生成序号方法,老版本优先选择 ROW 函数或者 COUNTA 函数来完成自动生成序号。
问题 4 excel 自动生成序号方法,能不能做成 A001 这种带前缀编号
回答 4 可以,在 ROW 函数 excel 自动生成序号方法基础上,拼接文本前缀,搭配 TEXT 函数补零定长,就可以实现带前缀的自动生成序号。
【免责申明】
本内容基于微软 excel 常规版本编写,WPS 新版表格兼容 SEQUENCE 函数,老版本不支持动态数组,不同版本函数运算逻辑略有差别,本教程仅作为学习参考,正式业务使用前请自行核验序号结果。
