如何用Excel VBA快速将多个工作簿中的数据汇总到一个工作簿

作者: 卡住了请等待分类: 校园学习 发布时间: 2020-03-08 21:07:14 浏览:15080 次

如何用Excel VBA快速将多个工作簿中的数据汇总到一个工作簿

一墨哚:
我在网上搜的这个代码,可是运行出来就显示“不能对合并单元格进行此操作”,请问怎么更改呀?代码如下: 将下列代码复制到文本框中: 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("B65536").End(xlUp).Row + 2, 1) = Left(MyName, Len(MyName) - 4) For G = 1 To Sheets.Count Wb.Sheets(G).UsedRange.Copy .Cells(.Range("B65536").End(xlUp).Row + 1, 1) Next WbN = WbN & Chr(13) & Wb.Name Wb.Close False End With End If MyName = Dir Loop Range("B1").Select Application.ScreenUpdating = True MsgBox "共合并了" & Num & "个工作薄下的全部工作表。如下:" & Chr(13) & WbN, vbInformation, "提示" End Sub

【回复】单看代码看不出什么问题的,必须要结合案例。但是有提示说“不能对合并单元格进行此操作”,就表明你想用来处理的那张表有合并的单元格,而合并的单元格在循环和引用时经常容易出问题
【回复】你这个太棒了丫,直接拿来用了。
向往的歌:
声音太小,根本听不清[辣眼睛][辣眼睛][辣眼睛]

佳薇79:
老师讲得很详细。。。正好需要这种代码

知识分享官 课程 视频教程 学习 公开课 编程

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!