使用场景:
在很多情况下,公司中收集资料可能都不是云端收集,到最后可能给到自己是一个Excel文档,然后里面还一堆sheet,这个时候,使用这段代码就可以快速将工作表分别保存成不同的工作簿,方便接下来的其他处理。
使用方法也非常简单:
将这一段代码随便拷贝到一个sheet中,直接点击执行即可,不需要专门设置一个xlsm文件。
核心代码:
Sub SaveSheetAsWorkbook() Dim theName As String '定义文件名变量 On Error GoTo Line1 '错误处理,报错直接跳出 For Each sht In Worksheets '循环本工作簿的各个工作表 sht.Copy '复制当前工作表 theName = ThisWorkbook.Path & "_" & sht.Name & ".xls" '拼接保存的文件名 ActiveWorkbook.SaveAs Filename:=theName, FileFormat:=xlNormal '设置保存参数 ActiveWindow.Close '关闭当前被保存的工作簿 Next Line1: End Sub
附件: 百度网盘 提取码:d2eq
tips:这段代码是保存成xls文件,个别电脑上保存xls可能会弹窗询问是否确认保存成xls,如果不想弹这个提示,直接修改保存文件名的扩展名即可。