合并当前目录下所有工作簿的全部工作


来源:高中英语教学交流网
发布时间:2019-01-10 10:18:00
查看次数:

内容提要:合并当前目录下所有工作簿的第一个工作表,且只保留一个表头

有时候需要合并多个分班表格,一般做法是一个一个复制粘贴,其实可以使用这种快捷的方法。

完整文件下载点击这里

VBA代码如下。


Sub 合并当前目录下所有工作簿的全部工作表()

    Dim MyPath, MyName, AWbName
    Dim Wb As Workbook, WbN As String, G As Long, Num As Long
    Application.ScreenUpdating = False
    MyPath = ActiveWorkbook.Path
    MyName = Dir(MyPath & "\" & "*.xls")
    AWbName = ActiveWorkbook.Name
    Num = 0
    Do While MyName <> ""
        If MyName <> AWbName Then
            Set Wb = Workbooks.Open(MyPath & "\" & MyName)
            Num = Num + 1
            With Workbooks(1).ActiveSheet
                If Num = 1 Then

                    'Wb.Sheets(1).UsedRange.Copy .Cells(.Range("A65536").End(xlUp).Row + 1, 1)

Wb.Sheets(1).UsedRange.Copy .Cells(1, 1)

                Else
                    Wb.Sheets(1).UsedRange.Offset(1, 0).Copy .Cells(.Range("A65536").End(xlUp).Row + 1, 1)
                End If
                WbN = WbN & Chr(13) & Wb.Name
                Wb.Close False
            End With
        End If
        MyName = Dir
    Loop
    Range("A1").Select
    Application.ScreenUpdating = True
    MsgBox "共合并了" & Num & "个工作薄的工作表。如下:" & Chr(13) & WbN, vbInformation, "提示"
End Sub

相关文章
·多列数据区域转换成一列VBA代码03-05
·我的电脑图标不见了,怎么找回来!09-14
·Office2003 Word/Excel等双击默认打开方式修复12-12
·如何一次性同时打开多个Excel工作簿10-30
·小册子打印代码07-07
·如何解决WORD安全模式错误问题09-19
·一分钟彻底清除电脑中的垃圾10-11
·制作Word2003选择性粘贴快捷键07-09
·excel删除数字保留文本02-04
·Excel输入分数的七种方法06-05
最新文章
阅读排行