【VBA案例016】拆分工作簿

大家好!

通过本次和之前几次的分享。对工作表、工作簿的拆分、合并都做了最基础的介绍以及案例演示。

而面对实际工作中经常遇到的工作表、工作簿的合并拆分问题,相信大家通过对这几个案例的交汇融合,基本上都可以找到对应的解决方案。

今天分享的是拆分系列的最有一项内容:拆分工作簿。就是把一个工作簿中的所有Sheet拆分成一个一个的独立的工作簿。

通过今天的案例,你将掌握工作表对象的Move和Copy方法。听起来很陌生,其实是你经常在用的一个很普通的功能:

语法:
Sheet.Copy([Before],[After])’参数可选,非必须
Sheet.Move([Before],[After])’参数可选,非必须
注意:
如果不填参数,将会把Sheet移动或复制到一个新的工作簿中
以下是VBA代码。详细解析请看文末的视频。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Option Explicit

Sub 拆分工作簿()

Dim sht As Worksheet
Dim filePath

filePath = ThisWorkbook.Path & "\"

Application.ScreenUpdating = False
For Each sht In ThisWorkbook.Worksheets
If sht.Name <> "首页" Then
'sht.Move
sht.Copy
ActiveWorkbook.SaveAs filePath & sht.Name & ".xlsx"
ActiveWorkbook.Close
End If
Next
Application.ScreenUpdating = True

End Sub

原始链接


转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 richffan@outlook.com

文章标题:【VBA案例016】拆分工作簿

字数:325

本文作者:Rich Fan

发布时间:2023-10-23, 00:00:00

最后更新:2024-02-27, 08:17:39

原始链接:http://fanrich.github.io/2023/10/22/VBA/VBA%E6%A1%88%E5%88%97/%E3%80%90VBA%E6%A1%88%E4%BE%8B016%E3%80%91%E6%8B%86%E5%88%86%E5%B7%A5%E4%BD%9C%E7%B0%BF/

版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。