将多个excel表合并到一个表中多个sheets

(1)新建一个文件夹,将需要合并的excel文档复制到该文档目录下。

(2)新建一个EXCEL空白文档,鼠标移动到在sheet工作表上单击右键,选择“查看代码”选项,进入VBA控制台。

(3)在VBA菜单栏点击“插入”菜单,选择“模块”选项,进入模块编辑界面。

(4)在编辑框中复制以下代码,注意符号,需是英文状态下。

Sub Books2Sheets()

    Dim fd As FileDialog
    set fd = Application.FileDialog(msoFileDialogFilePicker)

    Dim newwb As Workbook
    Set newwb = Workbooks.Add

    With fd 

        If .Show = -1 Then 
             Dim vrtSelectedItem As Variant 
             Dim i As Integer
                i = 1                     
            For Each vrtSelectedItem In .SelectedItems 
             Dim tempwb As Workbook               
              Set tempwb = Workbooks.Open(vrtSelectedItem)  

               tempwb.Worksheets(1).Copy Before:=newwb.Worksheets(i) 
               newwb.Worksheets(i).Name = VBA.Replace(tempwb.Name, ".xls", "")

               tempwb.Close SaveChanges:=False                              
             i = i + 1         
            Next vrtSelectedItem   
          End If 

    End With  

    Set fd = Nothing

End Sub

(5)代码输入后,点击菜单项中“运行”,选择“运行子过程”选项,或者按下F5快捷键,运行代码。

(6)运行代码后,会弹出文档选择界面,找到新建文件夹的路径,选择你所需要合并的文档,选择文档后,点击“打开”,代码正在运行,运行时间视文档数目而定。

(7)成功