为了实现将无数个有相同数据格式的excel表文件合并到一个excel的一个工作簿里面去方便进行后续的筛选,提取数据,分析等等。
需要分两步走:
第一步:将所有的excel合并到一个excel之中;刚才的多表之中的内容化身为现在的一个表,下边的多个sheet。
第二步:把这个excel之中的多个sheet合并到一个sheet之中。
需要的基础软件:拥有VBA的excel软件,可以用微软的包含有VBA的office,也可以用国产的wps之中的专业版。
下边说具体步骤
一 不同表合并到一个有很多sheet的表里
1、新建一个工作薄,将其命名为你合并后的名字。
2、打开此工作薄。
3、在其下任一个工作表标签上点击右键,选择“查看代码”。(wps的该按钮在开发工具下)
4、在打开的VBA编辑窗口中粘贴以下代码:
Sub 工作薄间工作表合并()
Dim FileOpen Dim X As Integer Application.ScreenUpdating = False FileOpen = Application.GetOpenFilename(FileFilter:="Microsoft Excel文件(*.xls),*.xls", MultiSelect:=True, Title:="合并工作薄") X = 1 While X <= UBound(FileOpen) Workbooks.Open Filename:=FileOpen(X) Sheets().Move After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count) X = X + 1 Wend ExitHandler: Application.ScreenUpdating = True Exit Sub errhadler: MsgBox Err.Description End Sub
5、关闭VBA编辑窗口。
6、在excel中,工具---宏---宏,选“工作薄间工作表合并”,然后“执行”。
7、在打开的对话窗口中,选择你需要合并的工作表,如果多的话,可以放在一个文件夹,然后全选。
8、等待。。。。ok!
二 将一个表里的很多sheet合并到一个sheet
1、在包含多个sheet的工作簿中(如多个工作簿合并后含n个sheet的工作簿),新建一个sheet
2、在新建的sheet标签上点击右键,选择“查看代码”(wps的该按钮在开发工具下)
3、在打开的VBA编辑窗口中粘贴以下代码:
Sub 合并当前工作簿下的所有工作表()
Application.ScreenUpdating = False For j = 1 To Sheets.Count If Sheets(j).Name <> ActiveSheet.Name Then X = Range("A65536").End(xlUp).Row + 1 Sheets(j).UsedRange.Copy Cells(X, 1) End If Next Range("B1").Select Application.ScreenUpdating = True MsgBox "当前工作簿下的全部工作表已经合并完毕!", vbInformation, "提示" End Sub
运行,等待……合并好了后会弹出提示。
以上是excel中如何将多个sheet合并成一个的详细内容。更多信息请关注PHP中文网其他相关文章!