如何把 Excel 数据按分类拆分为多个
例题描述
蔬果明细表fruits.xlsx文件中有蔬果总表,数据如下图所示:
现需要按类别对蔬果进行拆分后保存到新的sheet里,类别名称(删除类别号后)即为sheet名,如下图所示:
实现步骤
1、 运行集算器
可去润乾官网下载职场版,同时下载一个免费授权就够了,首次运行时会提示加载。
编写脚本:
把代码列出来看得清楚点:
A |
B |
|
1 |
=file("E:/excel/fruits.xlsx") |
|
2 |
=A1.xlsimport@t(;,2) |
|
3 |
=A2.group(类别) |
|
4 |
for A3 |
=substr(A4(1).类别,"]") |
5 |
=A1.xlsexport@ta(A4;B4) |
A1 打开fruits.xlsx文件
A2 将文件数据读成序表,选项@t表示首行是列标题,参数2表示从第2行开始读
A3 按类别列对数据进行分组
A4 循环处理每个组
B4 用每组第1条记录的类别值,取]号以后的文字作为sheet名
B5 把当前组的记录写入fruits.xlsx中的新sheet中,用B4算出来的名称作sheet名。注意这里一定要加选项a,表示是添加新的sheet
想生成多个文件也很容易,只需将 B5 修改:=file("E:/excel/"+B4+".xlsx").xlsexport@t(A4)
这个实现办法和原文件的列数无关,变动列都能支持
2、 按F9运行这段程序,打开fruits.xlsx就可以看到前文目标图所示的效果了。
【附件】 fruits.zip