excel如何快速把多个工作表合并到一个excel表精编版.docx
- 文档编号:6337560
- 上传时间:2023-01-05
- 格式:DOCX
- 页数:3
- 大小:15.71KB
excel如何快速把多个工作表合并到一个excel表精编版.docx
《excel如何快速把多个工作表合并到一个excel表精编版.docx》由会员分享,可在线阅读,更多相关《excel如何快速把多个工作表合并到一个excel表精编版.docx(3页珍藏版)》请在冰豆网上搜索。
excel如何快速把多个工作表合并到一个excel表精编版
excel如何快速把多个工作表合并到一个excel表
有这么一种情况,就是我们有很多张excel,而且excel表里面的公式基本一样,我们就想快速的把这些excel合并在一起,意思在合并在一个excel页面,这样可以方便我们分析和统计,那么excel如何快速把多个工作表合并到一个excel表?
下面为大家介绍这种方法,希望能帮助到大家。
工具/原料
Excel
操作步骤:
1、原始数据所在工作簿包含多个格式相同的工作表,只不过每个工作表内容不同,比如说不同人名的工作表数据或者不同部门填写的数据。
2、在原始数据同目录下新建一个工作簿,建立两个工作表,名称分别为“首页”和“合并汇总表”。
3、按Alt+F11进入VBA代码编辑和调试界面。
4、根据下图提示,插入一个模块。
5、将下述代码粘贴到模块空白处:
复制代码
代码如下:
SubCombineSheetsCells()
DimwsNewWorksheetAsWorksheet
DimcelAsRange
DimDataSource,RowTitle,ColumnTitle,SourceDataRows,SourceDataColumnsAsVariant
DimTitleRow,TitleColumnAsRange
DimNumAsInteger
DimDataRowsAsLong
DataRows=1
DimTitleArr()
DimChoice
DimMyName$,MyFileName$,ActiveSheetName$,AddressAll$,AddressRow$,AddressColumn$,FileDir$,DataSheet$,myDelimiter$
Dimn,i
n=1
i=1
Application.DisplayAlerts=False
Worksheets("合并汇总表").Delete
SetwsNewWorksheet=Worksheets.Add(,after:
=Worksheets(Worksheets.Count))
wsNewWorksheet.Name="合并汇总表"
MyFileName=Application.GetOpenFilename("Excel工作薄(*.xls*),*.xls*")
IfMyFileName="False"Then
MsgBox"没有选择文件!
请重新选择一个被合并文件!
",vbInformation,"取消"
Else
Workbooks.OpenFilename:
=MyFileName
Num=ActiveWorkbook.Sheets.Count
MyName=ActiveWorkbook.Name
SetDataSource=Application.InputBox(prompt:
="请选择要合并的数据区域:
",Type:
=8)
AddressAll=DataSource.Address
ActiveWorkbook.ActiveSheet.Range(AddressAll).Select
SourceDataRows=Selection.Rows.Count
SourceDataColumns=Selection.Columns.Count
Application.ScreenUpdating=False
Application.EnableEvents=False
Fori=1ToNum
ActiveWorkbook.Sheets(i).Activate
ActiveWorkbook.Sheets(i).Range(AddressAll).Select
Selection.Copy
ActiveSheetName=ActiveWorkbook.ActiveSheet.Name
Workbooks(ThisWorkbook.Name).Activate
ActiveWorkbook.Sheets("合并汇总表").Select
ActiveWorkbook.Sheets("合并汇总表").Range("A"&DataRows).Value=ActiveSheetName
ActiveWorkbook.Sheets("合并汇总表").Range(Cells(DataRows,2),Cells(DataRows,2)).Select
Selection.PasteSpecialPaste:
=xlPasteColumnWidths,Operation:
=xlNone,_
SkipBlanks:
=False,Transpose:
=False
Selection.PasteSpecialPaste:
=xlPasteAll,Operation:
=xlNone,SkipBlanks:
=_
False,Transpose:
=False
Selection.PasteSpecialPaste:
=xlPasteValues,Operation:
=xlNone,SkipBlanks_
:
=False,Transpose:
=False
DataRows=DataRows+SourceDataRows
Workbooks(MyName).Activate
Nexti
Application.ScreenUpdating=True
Application.EnableEvents=True
EndIf
Workbooks(MyName).Close
EndSub
6、在“首页”工作表中按下图示范插入一个窗体控件并指定宏为插入的代码名称。
7、点击“首页”工作表中插入的按钮,根据提示,浏览到原始数据工作簿。
8、下一步,用鼠标选择要合并的数据范围。
注意:
每个工作表数据可能不一样,比如说有的是10行数据,有的是30行数据。
在这里我们可以用鼠标选择任意工作表的一个较大范围,比如说A1:
D100,保证比最多行数的工作表数据还多就可以,一会再删除空行。
9、点击确定按钮,待代码运行完毕后,所有的数据就都合并到了“合并汇总表”中。
注意:
1)A列的文本说明右侧的数据来自于原始数据表的哪个工作表;
2)数据之间会有一些空行,下面通过筛选删除。
10、选中全部数据区域,执行自动筛选。
然后选择其中一个字段,选择“空白”和标题内容。
11、然后将筛选出来的无用行鼠标右键删除,再删除A列整列即可,完成效果如下图:
END
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- excel 如何 快速 工作 合并 一个 精编