当前位置: 主页 > Office办公 > Excel专区 > Excel教程 > Excel2003教程 > 在excel2013中怎么把几个excel合并到一个

在excel2013中怎么把几个excel合并到一个

  • 2023-03-12
  • 来源/作者: Wps Office教程网/ 菜鸟图库
  • 204 次浏览

  我们日常产生的Excel数据,有时候会保存在不同的Excel文档里,等到要分析、整理数据的时候需要把每个文档的数据复制、黏贴到一个Excel文档里,再进行分析。这个时候文档数据一多,工作量就大了。下面小编就教你在excel2013中怎么把几个excel合并到一个的方法。

  把几个excel合并到一个的步骤

  把需要合并的excel表格文档放到同一个文件夹里

把几个excel合并到一个的步骤图1

  新建一个“数据合并.xlsx“文档

把几个excel合并到一个的步骤图2

  打开“数据合并.xlsx“文档,在”Sheet1“工作表的地方右键→查看代码(快捷键:“Alt+F11”,尽量选用快捷方式)进入到Microsoft Visual Basic for Applications窗口

把几个excel合并到一个的步骤图3
把几个excel合并到一个的步骤图4

  双击工程资源管理器里面的sheet1,在右侧的代码区粘贴如下代码:

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

  Dim MyPath, MyName, AWbName

  Dim Wb As Workbook, WbN As String

  Dim G As Long

  Dim Num As Long

  Dim BOX As String

  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

  .Cells(.Range("A65536").End(xlUp).Row + 2, 1) = Left(MyName, Len(MyName) – 4)

  For G = 1 To Sheets.Count

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

  Next

  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

把几个excel合并到一个的步骤图5
把几个excel合并到一个的步骤图6

  运行→运行子过程/用户窗体(或者直接点击运行按钮,快捷键:F5),即可合并所有Excel表格到”数据合并.xlsx“文档的Sheet1工作表里面

把几个excel合并到一个的步骤图7

  完成Excel表格的合并

把几个excel合并到一个的步骤图8