领导发给我1个工作簿文件,希望我把里面每个工作里面都单独保存出来
如果工作表比较少,可以一个个手动的复制粘贴,花了将近半个小时,同事用这个技巧,直接1分钟就拆分完成了。
操作的步骤如下:
❶点击开发工具,选择visual basic
❷然后新建一个模块,输入代码:
代码如下所示:
Sub 拆分工作簿()
Dim wk As Workbook, i$, j%
Application.DisplayAlerts = False
For Each sht In Workbooks(1).Sheets
Set wk = Workbooks.Add
j = j + 1
Workbooks(1).Sheets(j).Copy Workbooks(2).Sheets(1)
i = ThisWorkbook.Path & "\" & sht.Name & ".xlsx"
wk.SaveAs i
wk.Close
Next
Application.DisplayAlerts = True
MsgBox "拆分完成!"
End Sub
这段代码就是模拟了手动的复制粘贴过程,是通用的,下次碰到可以直接使用
❸最后点击开发工具的宏,执行宏,就把每个工作表拆分了一个工作簿保存下来
注意事项:在运行这个宏之前,需要把其他所有的工作簿都关闭,否则会出错
下次再碰到很多个工作表需要拆分的时候,用这段代码直接运行吧!
联系客服