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


来源:高中英语教学交流网
发布时间: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

相关文章
·相片裁剪操作方法10-21
·excel如何取两个特定字符间的文字03-04
·完美解决WPS 2019 中的 VBA 不能用的问题12-29
·EXCEL每次打开都有一个personal.xls的解决方法05-21
·Win10电脑开机启动慢?教你只需三步,电脑开机速度快到飞起!06-11
·批量设置PowerPoint字体及行间距——VBA宏10-02
·一列数据轻松转换成多行多列02-05
·乱序分班输入成绩简便方法说明05-11
·word删除两个字符之间的内容11-29
·Office2003 Word/Excel等双击默认打开方式修复12-12
最新文章
阅读排行