首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何根据部门主管标识,给 Excel 列表中的每个部门递增编号?

不知为何,网友最近很爱咨询编号相关问题:如何根据部门主管标识,以整个部门为单位统一编号,其他部门编号依次顺序递增?

案例:

下图 1 中 C 列为 M 的表示部门经理,部门经理下方的所有人员是其员工,按以下要求给 B 列的人员编号:

从 C 列的第一个 M 开始编 1;

M 下方为空表示是同一个部门的员工,跟上方的 M 共用一个编号;

当遇到 C 列的下一个 M 时,编号递增;

如果 C 列的上方没有 M,表示没有部门经理,将编号设置为 0

效果如下图 2 所示。

解决方案:

1. 在 A2 单元格中输入以下公式 --> 下拉复制公式:

=(C2<>"")+IF(A1<9E+307,A1,0)

公式释义:

C2<>"":判断 C2 单元格是否不为空,即是否有值,如果有值返回 true,反之为 false,相当于 1 和 0;

A1<9E+307:

9E307 跟 9E+307 一样,表示 9*10^307,这几乎是 Excel 中的最大数值;

所以 <9E+307 通常用来表示所有数值,此处 A1<9E+307 也可以用 isnumber(A1) 来替代;

IF(...,A1,0):上面这段设定,是为了 A1 单元格能够参与加法计算;如果 A1 不是数值,就返回 0,否则就返回 A1 的值,将结果与第一段逻辑值公式的结果相加,起到递增的效果;

整段公式的意思就是,如果 C 列有值,记 1,A 列的结果为上一单元格的值 +1;如果 C 列没有值,记 0,A 列的结果为上一单元格的值 +0

如果在 C2 单元格输入 M,A2 的编号就变成了 1,符合案例需求。

  • 发表于:
  • 原文链接https://page.om.qq.com/page/O7J8kXFsLqhOfX0N5qgE49rQ0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券