拆分工作簿为多个文件_三秒钟由多个工作表自动生成多个工作簿文件

9d326f50f6d4d11c98108e8a1c42d4c4.png

一个工作簿中往往会有多个工作表,比如,同一个年级的多个班的成绩存放在一个工作簿的不同的工作表里,通过多个工作表实现对同一组数据进行分类管理。

那么如何把同一个工作簿里的每个工作表生成为一个独立的工作簿文件,分放到相应的班级里呢?

如此案例中,九年级8个班的成绩分别存放在了8个工作表里,我们要以这8个工作表的表名为文件名,分拆成8个工作簿文件,每个工作簿中存放一个班的成绩。

3ddd6dfb352cbb526a2da8debb4e406a.png

我们使用Excel的VBA程序语言,编写简单,瞬间即可完成多个工作表生成多个工作簿文件。

1、 建立工作簿文件存放文件夹

在计算机D盘创建一个空文件夹"chengjibiao",用于存放生成的多个工作簿文件。

7b08102754e0c463c18ed48f2daab030.png

2、 启动VBA语言编辑窗口。

选择"开发工具"菜单,单击"Visual Basic"命令按钮,打开"VBA编辑窗口"。

dba501b29045b97d36783243346a68e3.png

在VBA编辑窗口中的"工程"栏下任意打开鼠标右键快捷菜单,依次选择单击"插入"——"模块"菜单命令,进入到VBA编辑状态。

5b8fd24ec9cccd271b26676b0082d8ad.png

3、 编辑VBA程序语言语句

b8ef6fef6a0d25be8af0d8b7949af304.png
Sub fczgb()'分拆工作表Dim sht As WorksheetFor Each sht In Sheetssht.CopyActiveWorkbook.SaveAs Filename:="d:chengjibiao" & sht.Name & ".xlsx"ActiveWorkbook.CloseNextEnd Sub

4、 单击VBA编辑窗口的"运行"命令,瞬间原来的8个工作表生成为8个以原来的工作表名字为文件名的工作簿。每个工作簿中分别存放着每个班级的成绩。

9d5b480ec83f780144517070be938917.png
15499a033d7b0e61ac1e3a8c3134294b.png

5、 VBA程序语句的理解

(1)Sub

End sub

先VBA程序语句的框架。

(2)dim sht as worksheet

For each sht in sheets

next

为变量"sht"定义为"Worksheet"类型,并设定为在所有工作表(Sheets)中进行循环。

For与Next语句成对配合使用。

(3)sht.Copy

对工作表(sht)进行复制操作

(4) ActiveWorkbook.SaveAs Filename:="d:chengjibiao" & sht.Name & ".xlsx"

把刚刚复制产生的工作簿进行"另存为"(SaveAs)操作,保存位置是"d:chengjibiao",文件名是原工作表的表名(sht.Name).xlsx

(5)ActiveWorkbook.Close

关闭当前工作簿,进行下一轮循环操作,直到完成对所有工作表进行复制、重命名、保存操作。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值