如何按分类编号?相同分类编同一个号,分类若有变化,则编号递增。
这个案例之前我写过 PQ 解法,详情请参阅 对 Excel 的列按分类设置序号,不同分类的序号顺序递增,今天教大家用公式怎么实现。
案例:
给下图 1 的每个部门编号,要求同一部门的编号相同,部门变化则编号依次递增。
效果如下图 2 所示。


解决方案:
1. 在 A2 单元格中输入以下公式 --> 下拉复制公式:
=MATCH(B2,UNIQUE($B$2:B2),0)



公式释义:
UNIQUE($B$2:B2):
提取出 $B$2:B2 区域中的不重复项;
由于第一个单元格绝对引用,第二个单元格相对引用,所以随着单元格下拉,结果也会随之变化;直到 A6 单元格,结果都是“研发部”,而 A7 单元格的结果就变成了“研发部”和“市场和销售部”;


MATCH(B2,...,0):
将 B2 单元格的值与上述 unique 函数的结果相匹配,返回匹配值在整个数组中的位置数字;
比如 A6 的时候,第二个参数的结果中只有“研发部”一个部门,所以匹配出来的位置就是 1;而到了 A7 单元格,由于“市场和销售部”在数组中处于第二个位置,所以匹配后返回 2;依此类推,实现按不同部门赋予递增编号;
match 函数的第三个参数 0 表示精确匹配。
这个公式的好处是:即便部门的顺序打乱,仍然可以保持编号规则不乱。
