|
本帖最后由 lies0101 于 2018-10-2 23:12 编辑
我现在有个需求就是要把文件夹里面所有的工作簿的内容都放在一个工作簿里面,每个工作簿还有一些数量不等的sheet,现在有个代码能做到合并到一起,但是相同名字的sheet没有合并而是新建了个sheet,有没有大佬帮我看看怎么改?先谢谢大佬了
Sub CombineWorkbooks()
Dim FilesToOpen, ft
Dim x As Integer
Application.ScreenUpdating = False
On Error GoTo errhandler
FilesToOpen = Application.GetOpenFilename _
(FileFilter:="Micrsofe Excel文件(*.xls), *.xls", _
MultiSelect:=True, Title:="要合并的文件")
If TypeName(FilesToOpen) = "boolean" Then
MsgBox "没有选定文件"
'GoTo errhandler
End If
x = 1
While x <= UBound(FilesToOpen)
Set wk = Workbooks.Open(Filename:=FilesToOpen(x))
wk.Sheets().Move after:=ThisWorkbook.Sheets _
(ThisWorkbook.Sheets.Count)
x = x + 1
Wend
MsgBox "合并成功完成!"
errhandler:
'MsgBox Err.Description
'Resume errhandler
End Sub
附上附件了,大佬们看看吧,拜托了
|
|