VBA应用—合并选择的多个excel文件下所有的工作表合并到一个工作簿里

合并选择的多个excel文件下所有的工作表合并到一个工作簿里

Sub test()

Dim str()

Dim i As Integer

Dim wb, wb1 As Workbook

Dim sht As Worksheet

On Error Resume Next '加上以后防止点了取消发生的错误

Set wb1 = ActiveWorkbook

Set sht1 = ActiveSheet

On Error Resume Next

str = Application.GetOpenFilename("Excel数据文件,*.xls*", , , , True)

true 代表可多选工作簿"Excel数据文件,*.xls*" 显示类型为xls的文件

    For i = LBound(str) To UBound(str)

'  LBound(str) 数组下限UBound(str) 数组上限

        Set wb = Workbooks.Open(str(i))

        For Each sht In wb.Sheets

            sht.Copy after:=wb1.Sheets(wb1.Sheets.Count)

            wb1.Sheets(wb1.Sheets.Count).Name = Split(wb.Name, ".")(0) & sht.Name

        Next

        wb.Close

    Next

End Sub

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容