[使用VBA合并多个Excel工作簿的几个例子MY.docVIP

[使用VBA合并多个Excel工作簿的几个例子MY.doc

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
[使用VBA合并多个Excel工作簿的几个例子MY

使用VBA合并多个Excel工作簿的几个例子 将?许?多?个?工?作?簿?中?的?工?作?表?合?并?到?一?个?工?作?薄?中?,?然?后?对?数?据?进?行?统?计?计?算?,?举?了?几?种?合?并?的?案?例?。 Sub 合并工作簿() Application.DisplayAlerts = False 关闭提示窗口 shes = Application.SheetsInNewWorkbook 工作簿中包含工作表数 Application.SheetsInNewWorkbook = 1 生成的新工作簿中只有一个工作表 Set newbok = Workbooks.Add 生成新工作簿 Set newshe = newbok.Worksheets(1) 新工作表 s = 1 从新工作表的第一行写入数据 na = Dir(d:\123\*.xls) 需要合并的所有工作表都要事先保存在D盘time文件夹下 Do While na Set wb = Application.Workbooks.Open(d:\123\ na) wb.Worksheets(1).UsedRange.Copy 复制数据 newbok.Activate Cells(s, 1).Select ActiveSheet.Paste 执行粘贴 s = newshe.UsedRange.Rows.Count + 1 Cells(s, 1) = wb.Name 写入数据所属的工作簿名字 s = s + 1 wb.Close 关闭工作簿 na = Dir() 取下一个工作簿 Loop Application.SheetsInNewWorkbook = shes Application.DisplayAlerts = True Range(a1).Select End Sub ///把多个工作簿中的第一个工作表中的数据合并到一个工作簿的一个工作表中 Sub Com() 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 Wb.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 MyName = Dir Loop Range(A1).Select Application.ScreenUpdating = True MsgBox 共合并了 Num 个工作薄下的全部工作表。如下: Chr(13) WbN, vbInformation, 提示 End Sub ///把多个工作簿中所有工作表合并到一个工作表中 Sub Books2Sheets() 定义对话框变量 Dim fd As FileDialog Set fd = Application.FileDialog(msoFileDialogFilePicker) 新建一个工作簿 Dim newwb As Workbook Set newwb = Workbooks.Add With fd If .

文档评论(0)

1789811832 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档