2024年4月10日发(作者:)
一、操作方法
将所有要合并的工作簿存放到同目录下,在同目录下新建“汇总工作簿.xls”,打
开后,按Alt+F11进入代码编辑界面,点击插入-模块,将代码复制粘贴进去,点
击运行。
二、将多个工作簿的所有工作表(sheet)复制到一个工作簿内,代码:
Sub CombineFiles()
Dim path As String
Dim FileName As String
Dim LastCell As Range
Dim Wkb As Workbook
Dim WS As Worksheet
Dim ThisWB As String
Dim MyDir As String
MyDir = & ""
'ChDrive Left(MyDir, 1) 'find all the excel files
'ChDir MyDir
'Match = Dir$("")
ThisWB =
Events = False
Updating = False
path = MyDir
FileName = Dir(path & "*.xls", vbNormal)
Do Until FileName = ""
If FileName <> ThisWB Then
Set Wkb = (FileName:=path & "" & FileName)
For Each WS In eets
Set LastCell = lCells(xlCellTypeLastCell)
If = "" And s
Range("$A$1").Address Then
Else
After:=()
End If
Next WS
False
End If
FileName = Dir()
Loop
Events = True
=
Updating = True
Set Wkb = Nothing
Set LastCell = Nothing
End Sub
三、将多个工作簿的第一张工作表(sheet)复制到一个工作簿内,代码:
Private Sub 合并工作薄()
Dim f_name As String
Dim bok1 As Workbook, bok2 As Workbook
Set bok2 = Nothing
f_name = Dir( & "*.*") '获得该目录下的所有EXCEL文件
Do While f_name <> "" '开始执行循环
If f_name <> Then '如果当前的文件不是代码所在文
件,执行合并操作
Set bok1 = ( & "" & f_name) '打
开被合并的文件
If bok2 Is Nothing Then '合并后的文件是否存在
(1).Copy '如果合并后的文件不存在,则创建一个
Set bok2 = ActiveWorkbook
Else
(1).Copy Before:=(1) '如果合并后的文件
存,在则将被合并文件的第一个工作表复制到合并文件中。
End If
'关闭被合并文件
End If
f_name = Dir() '获取下一个被合并文件名
Loop
End Sub
四、将多个工作簿的所有工作表(sheet)复制到一个工作簿的同一个sheet内,
代码:
Sub 合并当前目录下所有工作簿的全部工作表()
Dim MyPath, MyName, AWbName
Dim Wb As Workbook, WbN As String
Dim G As Long
Dim Num As Long
Dim BOX As String
Updating = False
MyPath =
MyName = Dir(MyPath & "" & "*.xls")
AWbName =
Num = 0
Do While MyName <> ""
If MyName <> AWbName Then
Set Wb = (MyPath & "" & MyName)
Num = Num + 1
With Workbooks(1).ActiveSheet
.Cells(.Range("A65536").End(xlUp).Row + 2, 1) = Left(MyName, Len(MyName) - 4)
For G = 1 To
(G). .Cells(.Range("A65536").End(xlUp).Row + 1, 1)
Next
WbN = WbN & Chr(13) &
False
End With
End If
MyName = Dir
Loop
Range("A1").Select
Updating = True
MsgBox "共合并了" & Num & "个工作薄下的全部工作表。如下:" & Chr(13) &
WbN, vbInformation, "提示"
End Sub


发布评论