Excel如何用函数实现编号与子编号 支持长数据库下拉填充
该需求完全可以实现,根据你使用的Excel版本选择对应公式即可实现下拉自动生成编号、子编号的效果,示例效果如下:
前置说明
默认规则:A列有内容的行对应主编号(如1、2、3),A列为空的行对应子编号(如1.1、1.2),表格第1行为表头,数据从第2行开始。如果你的规则不同,只需要修改公式中判断主项的条件即可。
Excel 365/2021及以上版本(支持动态数组)
无需特殊操作,输入公式后直接下拉填充即可:
- 选中B2单元格
- 输入公式:
=LET(x,SCAN(0,A$2:A2,LAMBDA(a,b,IF(b<>"",a+1,a))),y,SCAN(0,A$2:A2,LAMBDA(a,b,IF(b<>"",0,a+1))),IF(y=0,x,x&"."&y)) - 按回车后下拉公式到所有数据行即可。
Excel 2019及以下旧版本
需要使用数组公式,按三键确认后再下拉:
- 选中B2单元格
- 输入公式:
=IF(A2<>"",COUNTA(A$2:A2),MAX(IF(A$2:A2<>"",VALUE(B$1:B1),0))&"."&COUNTIF(INDIRECT(MAX(IF(A$2:A2<>"",ROW(A$2:A2),0))&":"&ROW()),"")-1) - 按下
Ctrl+Shift+Enter组合键完成数组公式确认,再下拉公式到所有数据行即可。
内容的提问来源于stack exchange,提问作者A_Hoshy
相关产品推荐
相关产品推荐

