要把一整张excel表格拆成多张小表,最稳妥的方法就是按部门、地区、类别这类字段逐个筛选,把筛选出来的可见记录复制到新工作表里就行。本次操作环境是microsoft 365版本的excel,全程不会改动原始数据表,特别适合把一张总销售明细表拆成华东、华南、华北这类单独的区域小表。
动手之前先检查下原表:表头要完整,中间不能有空行,尽量也别有合并单元格。用来当拆分依据的字段最好单独占一列,比如专门的「区域」列、「部门」列,不然筛选出来的记录很容易缺漏。
第一步:选中原始表格
先点进原始数据的区域,拖动鼠标选中包含表头和所有明细的整张表,选区一定要把用来拆分的依据列包进去,比如你是按区域拆,就不能漏掉区域这一列。要是表格特别长,直接按 Ctrl+A 就能选中当前所有连续的数据,之后扫一眼边框,确认最后一行也被圈进去就行。

第二步:按拆分字段筛选
切换到顶部的「数据」选项卡,点开「筛选」,点你要拆分的字段表头旁边弹出的小箭头,只勾选其中一个分类,比如只选「华东」或者「销售部」,点确定之后,表里就只会显示这一类的记录。每次只筛一个分类,后面复制出来的小表才不会混进别的内容。

第三步:只选择可见单元格
筛选完别直接全选复制,先按 Alt+; 快捷键,就能只选中当前的可见单元格。要是记不住快捷键,也可以到「开始」选项卡里找「查找和选择」,点开之后选「定位条件」,再勾选「可见单元格」点确定就行。这么操作的话,复制的时候Excel只会带走你刚筛出来的记录,不会把隐藏起来的其他分类内容一起粘过去。
本文档主要介绍如何通过python对office excel进行读写操作,使用了xlrd、xlwt和xlutils模块。另外还演示了如何通过Tcl tcom包对excel操作。感兴趣的朋友可以过来看看

第四步:粘贴到新工作表
按 Ctrl+C 复制刚才选中的可见记录,点底部工作表栏的加号新建一个空白表,光标定位到A1单元格,按 Ctrl+V 粘贴就好。粘完顺手把新工作表的名字改成对应的分类名,比如「华东」「销售部」,之后找数据一目了然。

第五步:返回原表重复拆分
切回最开始的原始数据表,重新点开筛选菜单,把刚才选的分类取消,勾选下一个要拆的分类,重复一遍「选可见单元格→复制→新建表→粘贴」的操作就行。所有分类都拆完之后,核对下底部工作表的名字和对应分类是不是一一对应,要是哪张小表缺了表头,基本是第一步选原始区域的时候没把表头框进去。

拆分完建议把原始表原封不动留着,拆出来的几个小表用来分发就行。之后要是原表里新增了数据,得重新走一遍筛选拆分的流程;要是你每天都要重复拆分操作,不如试试用Power Query或者VBA自动跑,反复手动筛选太费时间。










