分享将一个EXCEL工作簿,按工作表拆分成多个宏代码。

Sub 宏1()
'
Dim sht As Worksheet '定义一个工作表变量 sht

Dim mybook As Workbook '定义一个工作簿变量 mybook

Application.ScreenUpdating = False '关闭屏幕更新:作用为加快宏的执行速度,这样将看不到宏的执行过程,但宏的执行速度加快了。

Set mybook = ActiveWorkbook '将当前工作簿赋值给变量 mybook

For Each sht In mybook.Sheets 'FOR 循环实现将工作簿中的多个工作表拆开成以工作表名称命名的工作簿并保存在原工作簿相同的路径中

sht.Copy

ActiveWorkbook.SaveAs Filename:=mybook.Path & "\" & sht.Name, FileFormat:=xlNormal

ActiveWorkbook.Close

Next

Application.ScreenUpdating = True '恢复屏幕刷新 ,屏幕刷新 False /True 需成对出现 。

MsgBox "工作簿已经拆分完毕"

End Sub