米老鼠 发表于 2021-8-18 17:14:27

大量EXECEL工作薄合并到一个EXECEL工作薄中

本帖最后由 米老鼠 于 2021-8-18 17:47 编辑

今天刚好要将所有客户名单导出来,做个客户在全国分布的情况视图。但是我们2逼系统导出全量数据就会报网络超时,估计数量过大,只能5000个客户导一次,经过N次导出,终于全部导完了,但是要把它们放到一个EXECEL中。于是:


1、将需合并的Excel文件放在同一个文件夹中。
2、打开新建的Excel文件,按 Alt + F11 键,打开宏,选择视图→代码窗口。
3、将下面的代码拷贝粘贴到代码窗口中:
Sub sheets2one()
'定义对话框变量
Dim cc As FileDialog
Set cc = Application.FileDialog(msoFileDialogFilePicker)
Dim newwork As Workbook
Set newwork = Workbooks.Add
With cc
If .Show = -1 Then
Dim vrtSelectedItem As Variant
Dim i As Integer
i = 1
For Each vrtSelectedItem In .SelectedItems
Dim tempwb As Workbook
Set tempwb = Workbooks.Open(vrtSelectedItem)
tempwb.Worksheets(1).Copy Before:=newwork.Worksheets(i)
newwork.Worksheets(i).Name = VBA.Replace(tempwb.Name, ".xls", "")
tempwb.Close SaveChanges:=False
i = i + 1
Next vrtSelectedItem
End If
End With
Set cc = Nothing
End Sub

4、点击菜单“运行”—“运行子过程/用户窗体”。
5、在弹出选择对话框中,选择要批量合并的Excel文件,点击“确定”即可合并为一个Excel工作簿。
6、点击“确定”后,运行合并即可。

吧主vodobai 发表于 2021-8-19 13:59:00

不是复制粘贴么:lol

米老鼠 发表于 2021-8-19 14:59:39

吧主vodobai 发表于 2021-8-19 13:59
不是复制粘贴么

20多个表,每个几万行,你试试,电脑就死机了。

吧主vodobai 发表于 2021-8-19 22:06:29

米老鼠 发表于 2021-8-19 14:59
20多个表,每个几万行,你试试,电脑就死机了。

50包邮

米老鼠 发表于 2021-8-24 13:39:55

吧主vodobai 发表于 2021-8-19 22:06
50包邮

先给钱,我把数据EMAIL给你。哈哈哈哈哈
页: [1]
查看完整版本: 大量EXECEL工作薄合并到一个EXECEL工作薄中