5.6 纵向拆分 - 多卡片拆成一张卡片一个文件

 

有多卡片式表格 Cards.xlsx 如下:

imagepng

现需要把它拆成一张卡片一个文件,并以姓名作为文件名,如:

Andrew.Fuller.xlsx:

imagepng

Janet.Leverling.xlsx:

imagepng

Margaret.Peacock.xlsx:

imagepng

Nancy.Davolio.xlsx:

imagepng

等等…

实现步骤:

1、做一个空的卡片文件 Card.xlsx,作为初始的文件格式:

imagepng

2、编写脚本:

A B C
1 =file(“Card.xlsx”).xlsopen()
2 =file(“Cards.xlsx”).xlsopen()
3 [B,D,B,D,B,B,B,B] [1,1,2,2,3,4,5,6,7]
4 =A3.(~/B3(#))
5 for =A3.(~/B3(#)).(A2.xlscell(~))
6 if B5(1)=="" break
7 for A4 =A1.xlscell(B7,1;B5(#B7))
8 =file(B5(3)+“.”+B5(4)+“.xlsx”).xlswrite(A1)
9 >B3=B3.(~+8)

A1:打开空的卡片模板 Card.xlsx

A2:打开多卡片文件 Cards.xlsx

A3:列出待读数的单元格列号

B3:列出待读书的单元格行号

A4:拼出第一张卡片的单元格名

A5:循环

B5:拼出当前卡片的单元格名,并读其中的数据

B6:如果卡片已经读完则退出循环

B7:对 A4 循环,把 B5 中的数据挨个写入 A1

B8:把 A1 写出到以当前卡片姓名命名的文件中

B9:把行号加 8,因为一张卡片是 8 行


帮你早下班 - esProc 桌面版与 Excel 数据处理
5.5 纵向拆分 - 一行生成一张卡片
5.7 格式转换 - 主子关系的表拆分成卡片