山东喵

导航

 

使用场景:

在很多情况下,公司中收集资料可能都不是云端收集,到最后可能给到自己是一个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,如果不想弹这个提示,直接修改保存文件名的扩展名即可。

posted on 2022-04-12 09:15  山东喵  阅读(1339)  评论(0编辑  收藏  举报