adapter.fill(datatable)为行数为空_在Excel中生成行数不规则的序号

本文介绍了如何在Excel中按特定列(如客户证件号码)生成不规则序号,通过分类汇总、定位空值、合并单元格及使用MAX公式实现批量处理。步骤包括删除原有序号、分类汇总、定位空值、删除多余汇总行,并用公式填充序号。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在Excel中生成行数不规则的序号

平常我们在使用Excel时,序号都是逐行加1,第1行是1,第2行是2,以此类推,但是有时我们会希望按某一特定的列来标记行号,例如:我们希望序号是按客户进行递增,第1个客户的序号是1,第2个客户的序号是2,以此类推,如果客户有多行,则合并序号单元格,统一标记一个序号。例如下图:

baaa05b2d9b69ec3c341cb9fb1113b77.png

那么接下来,我们看一下如何批量处理这个问题。首先我们看一下原始文件,这个原始文件是比较正常的,如果没有这个特殊需求,我们直接填充序列就可以满足要求了。

4451cd481816135426c89f8b2e21b295.png

1. 删除原有的序号列中的内容,保持所有单元格为空的状态

ad920a6f39f349461d666c5e9a4e7de0.png

2. 先选择表格的任意一个单元格,然后选择数据分类汇总,再分类字段中选择"新证件号码",汇总方式选择"计数",选定汇总项选择"序号",然后点击"确定"。由于客户名称可能会重名,所以这里我们使用证件号码进行分类

a4d858dc70de067ede7943317708bd30.png

3. 选择整个序号列(A列),然后按Ctr+G,打开定位对话框,点击"定位条件"按钮。

cac44ed7c40207c1b5e525a99ddb2f17.png

4. 选择"空值",然后点击"确定"

2bc9e6f32c16bbe68ff4e94abeaad9e9.png

5. 点击"开始"标签中的"合并后居中",我们要填充序号的单元格就都准备好了

200b1379b877604d3714c63b2f48436e.png

6. 现在我们再次选择分类汇总,然后点击"全部删除",删除其它不需要的行

725facfd3352c3bafbd4d3cad90764ff.png

7. 至此,我们就按客户合并了所有的单元格,如果一个客户有多行,那么我们也合并了多个单元格,剩下的就是把序号填充进去。

de99aa0b8f081cdc1c9125b85313d03e.png

8. 这里有一个小技巧,先选择A2单元格,再按住shift选择序号列(A列)的最后一个单元格(我这里是A735单元格,当然你们从截图里是看不到的),然后在公式栏中输入"=MAX($A$1:A1)+1",输入完成后,按Ctrl+Enter,序号就自动填充好了

d9814e2edb79b09a7993886e2de22409.png

好了,至此我们就完成了所有的操作。现在序号将是按客户的证件号码列(E列)进行填充,相同客户的序号都是统一的。

在这里我简单解释一下,首先我们是通过分类汇总,按客户的证件号码进行汇总,将同一个客户汇总到一起,然后我们再利用定位功能,将同一个客户的多行进行了合并,这时得到了一个空的序号列,最后我们再利用MAX公式,进行了填充,使序号自动填充进去。通过分类汇总,同一个客户对应的行都在一起,然后对应的下方会有一个"小计",在咱们这里实际上就是"计数"行。由于计数行是有内容的,这就为我们使用定位功能选择"空值"创造了条件,选定所有要填充序号的单元格之后,我们使用合并单元格功能,对多行进行了合并,如果是单行的话,这个功能也没有影响到它,所以每个客户这时就有了统一的合并好的序号单元格。

MAX公式的原理是对比当前单元格和当前单元格之上的单元格,比较后取最大值+1。序号1是由于第一次比较同一个单元格,结果值为0,所以加1得第1个序号,之后每次通过MAX获得最大的序号,再加1。这里有两点要注意,第一是选定单元格时,一定先选A2,再选序号列的最后一个单元格,第二是输入完公式,一定是按Ctrl+Enter,这样才可以正确填充所有的公式。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值