找回密码
 加入我们

QQ登录

只需一步,快速开始

搜索
查看: 5391|回复: 0

excel表中将多个工作表合成一个工作表

[复制链接]

1214

主题

352

回帖

11

精华

管理员

菜鸟

积分
93755

贡献奖关注奖人气王精英奖乐于助人勋章

发表于 2013-6-24 17:23:03 | 显示全部楼层 |阅读模式
新建一个工作表,命名后保存到和与合并的N个文件同一个文件文件夹,按 alt + f11,双击工程资源管理器里面的sheet1(sheet1),在右侧的代码区粘贴如下代码。运行。
  1. Sub 合并当前目录下所有工作簿的全部工作表()
  2. Dim MyPath, MyName, AWbName
  3. Dim Wb As Workbook, WbN As String
  4. Dim G As Long
  5. Dim Num As Long
  6. Dim BOX As String
  7.     Application.ScreenUpdating = False
  8.     MyPath = ActiveWorkbook.Path
  9.     MyName = Dir(MyPath & "" & "*.xls")
  10.     AWbName = ActiveWorkbook.Name
  11.     Num = 0
  12.     Do While MyName <> ""
  13.         If MyName <> AWbName Then
  14.             Set Wb = Workbooks.Open(MyPath & "" & MyName)
  15.             Num = Num + 1
  16.             With Workbooks(1).ActiveSheet
  17.                 .Cells(.Range("A65536").End(xlUp).Row + 2, 1) = Left(MyName, Len(MyName) - 4)
  18.                 For G = 1 To Sheets.Count
  19.                     Wb.Sheets(G).UsedRange.Copy .Cells(.Range("A65536").End(xlUp).Row + 1, 1)
  20.                 Next
  21.                 WbN = WbN & Chr(13) & Wb.Name
  22.                 Wb.Close False
  23.             End With
  24.         End If
  25.         MyName = Dir
  26.     Loop
  27.     Range("A1").Select
  28.     Application.ScreenUpdating = True
  29.     MsgBox "共合并了" & Num & "个工作薄下的全部工作表。如下:" & Chr(13) & WbN, vbInformation, "提示"
  30. End Sub
复制代码
【VB】QQ群:1422505加的请打上VB好友
【易语言】QQ群:9531809  或 177048
【FOXPRO】QQ群:6580324  或 33659603
【C/C++/VC】QQ群:3777552
【NiceBasic】QQ群:3703755
您需要登录后才可以回帖 登录 | 加入我们

本版积分规则

快速回复 返回顶部 返回列表