基于Excel另一列设置多级编号的公式实现求助
Excel 用公式将现有编号转多级编号的简单方案
场景1:按行层级生成(比如一级行对应1,二级对应1.1,三级对应1.1.1)
假设A列是层级标记(1=一级,2=二级,3=三级),B列是当前层级的序号,在C2输入公式后下拉:
=IF(A2=1,B2,INDEX(C:C,MATCH(A2-1,A:A,0))&"."&B2)
- 逻辑:一级直接取序号,二级及以上自动匹配上一层级的最后一个编号,拼接当前序号
场景2:连续单级编号按固定层级拆分
如果A列是连续的1、2、3...编号,要按每3个为一组生成二级/三级编号:
- 二级(比如1-3对应1.1、1.2、1.3;4-6对应2.1...):
=INT((A2-1)/3)+1&"."&MOD(A2-1,3)+1
- 三级(每9个一组,拆成x.x.x):
=INT((A2-1)/9)+1&"."&INT((MOD(A2-1,9))/3)+1&"."&MOD(A2-1,3)+1
场景3:分散层级编号合并(A列一级,B列二级,C列三级)
直接拼接,自动忽略空层级避免多余的点:
=A2&IF(B2<>"","."&B2,"")&IF(C2<>"","."&C2,"")
内容的提问来源于stack exchange,提问作者tompaz
相关产品推荐
相关产品推荐

