您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 管理学资料 > EXCEL中如何将多个工作表的内容合并到一个表格中
操作步骤:1、原始数据所在工作簿包含多个格式相同的工作表,只不过每个工作表内容不同,比如说不同人名的工作表数据或者不同部门填写的数据。2、在原始数据同目录下新建一个工作簿,建立两个工作表,名称分别为“首页”和“合并汇总表”。3、按Alt+F11进入VBA代码编辑和调试界面。4、根据下图提示,插入一个模块。5、将下述代码粘贴到模块空白处:复制代码代码如下:SubCombineSheetsCells()DimwsNewWorksheetAsWorksheetDimcelAsRangeDimDataSource,RowTitle,ColumnTitle,SourceDataRows,SourceDataColumnsAsVariantDimTitleRow,TitleColumnAsRangeDimNumAsIntegerDimDataRowsAsLongDataRows=1DimTitleArr()DimChoiceDimMyName$,MyFileName$,ActiveSheetName$,AddressAll$,AddressRow$,AddressColumn$,FileDir$,DataSheet$,myDelimiter$Dimn,in=1i=1Application.DisplayAlerts=FalseWorksheets(合并汇总表).DeleteSetwsNewWorksheet=Worksheets.Add(,after:=Worksheets(Worksheets.Count))wsNewWorksheet.Name=合并汇总表MyFileName=Application.GetOpenFilename(Excel工作薄(*.xls*),*.xls*)IfMyFileName=FalseThenMsgBox没有选择文件!请重新选择一个被合并文件!,vbInformation,取消ElseWorkbooks.OpenFilename:=MyFileNameNum=ActiveWorkbook.Sheets.CountMyName=ActiveWorkbook.NameSetDataSource=Application.InputBox(prompt:=请选择要合并的数据区域:,Type:=8)AddressAll=DataSource.AddressActiveWorkbook.ActiveSheet.Range(AddressAll).SelectSourceDataRows=Selection.Rows.CountSourceDataColumns=Selection.Columns.CountApplication.ScreenUpdating=FalseApplication.EnableEvents=FalseFori=1ToNumActiveWorkbook.Sheets(i).ActivateActiveWorkbook.Sheets(i).Range(AddressAll).SelectSelection.CopyActiveSheetName=ActiveWorkbook.ActiveSheet.NameWorkbooks(ThisWorkbook.Name).ActivateActiveWorkbook.Sheets(合并汇总表).SelectActiveWorkbook.Sheets(合并汇总表).Range(A&DataRows).Value=ActiveSheetNameActiveWorkbook.Sheets(合并汇总表).Range(Cells(DataRows,2),Cells(DataRows,2)).SelectSelection.PasteSpecialPaste:=xlPasteColumnWidths,Operation:=xlNone,_SkipBlanks:=False,Transpose:=FalseSelection.PasteSpecialPaste:=xlPasteAll,Operation:=xlNone,SkipBlanks:=_False,Transpose:=FalseSelection.PasteSpecialPaste:=xlPasteValues,Operation:=xlNone,SkipBlanks_:=False,Transpose:=FalseDataRows=DataRows+SourceDataRowsWorkbooks(MyName).ActivateNextiApplication.ScreenUpdating=TrueApplication.EnableEvents=TrueEndIfWorkbooks(MyName).CloseEndSub6、在“首页”工作表中按下图示范插入一个窗体控件并指定宏为插入的代码名称。7、点击“首页”工作表中插入的按钮,根据提示,浏览到原始数据工作簿。8、下一步,用鼠标选择要合并的数据范围。注意:每个工作表数据可能不一样,比如说有的是10行数据,有的是30行数据。在这里我们可以用鼠标选择任意工作表的一个较大范围,比如说A1:D100,保证比最多行数的工作表数据还多就可以,一会再删除空行。9、点击确定按钮,待代码运行完毕后,所有的数据就都合并到了“合并汇总表”中。注意:1)A列的文本说明右侧的数据来自于原始数据表的哪个工作表;2)数据之间会有一些空行,下面通过筛选删除。10、选中全部数据区域,执行自动筛选。然后选择其中一个字段,选择“空白”和标题内容。11、然后将筛选出来的无用行鼠标右键删除,再删除A列整列即可,完成效果如下图:END以上就是excel如何快速把多个工作表合并到一个excel表的方法,大家看明白了吗?希望能帮助到大家,谢谢大家阅读本篇文章!
本文标题:EXCEL中如何将多个工作表的内容合并到一个表格中
链接地址:https://www.777doc.com/doc-6717999 .html