精进ExcelExcel 加油站VBA For Excel

Excel---如何快速创建多个Excel工作簿

2018-05-24  本文已影响17人  汪汪家的宝贝

前言

正如上一篇文章提到的,我们很多时候会创建很多个文件夹---例如说创建5月份每一天的文件夹(详情请见:《快速创建多个文件夹》,链接:https://www.jianshu.com/p/9ac1ff59fd55)。
而在实际工作中,我们还会遇到需要批量创建Excel工作簿的情况,这些工作簿可能除了名字不同,每一个工作簿的格式完全一致,例如老师可能会需要创建一班、二班、三班、四班成绩单。如果每一个工作簿都在需要的时候临时创建---包括命名工作簿、创建一模一样的表头、调整完全一致的格式等---这样的工作其实可以一次性完成,避免大量重复性劳动,何乐而不为呢?


第一步:创建这许多个工作簿的名字

我们的第一步,首先要想好这么多工作簿的名字是什么。我们拿学生成绩单来举例,需要创建1班至10班的成绩单,我们可以进行如下操作:
第一,按住Ctrl,下拉拖动,生成1-10的序列
第二,双击单元格右下角实心十字,在次列填充“班成绩单”
第三,利用公式,将前两列拼接到一起,生成我们想要的工作簿名称。所用的公式:CONCATENATE()


生成想要的工作簿名称.gif

第二步:生成工作表

第一,对在第一步中生成的“工作簿名称”列选中,进行透视。插入选项卡-数据透视表-确定。
第二,将“工作簿名称”放入“筛选器”
第三,分析选项卡,选项-显示报表筛选页-确定
随即,我们可以看到生成多个工作表,工作表的名称就是我们在第一步命名的“工作簿名称”。


生成工作表.gif

第三步:选中新生成的工作表,清除这几个表中的数据

第一,按住Shift,将所需的工作表选中
第二,快捷键Ctrl+A,将选中的工作表的内容全部选中
第三,开始选项卡,“编辑”-“清除”-“全部清除”

选中工作表清除内容.gif

随即,这些表里面的内容会被清除。

第四步:批量操作,添加统一的表头

在1班成绩单至10班成绩单的工作表被选中的状态下,添加表头、调整格式等操作。随后我们会发现,这十张工作表都被添加上了统一的内容。我们这边添加:班级、姓名、数学、语文、英语字段,并进行加粗


批量操作添加统一表头.gif

第五步:用VBA代码将工作表拆分成独立工作簿

第一,在工作表名称上单击右键-查看代码-插入-模块
第二,粘贴如下的代码(将在D盘的temp文件夹下生成工作簿,请提前在D盘创建temp文件夹),关闭窗口

Sub 生成独立工作簿()
Dim i As Integer
For i = 1 To Sheets.Count
Sheets(i).Copy
ActiveWorkbook.SaveAs "D:\temp" & ActiveSheet.Name & ".xlsx"
ThisWorkbook.Activate
Next i
End Sub

第三,开发工具-宏-选中“生成独立工作簿”-执行。快捷键:Alt+F8(有的电脑是Fn+Alt+F8)


用宏生成独立工作簿.gif

结语

以上就是今天分享的内容啦~
在工作中接触的越多,越发现需要学习的内容越多、可以改进提高效率的地方越多;同时学的越多,也发现应该分享的内容越多。
我们总是在不断的发现问题、解决问题、分享经验中不断进步的。
能一直往前走,变成更好的自己就很开心~
加油~

上一篇下一篇

猜你喜欢

热点阅读