|
楼主 |
发表于 2017-4-11 00:54
|
显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用 · 内置多项VBA编程加强工具 ★ 免费下载 ★ ★ 使用手册★
没理解你的意思。参考代码:
Sub lsc()
t = Timer
myPath = ThisWorkbook.Path & "\"
MyName = Dir(myPath & "*.xls*")
Application.ScreenUpdating = False
ReDim brr(1 To 3000, 1 To 5)
Do While MyName <> ""
If MyName <> ThisWorkbook.Name Then
n = n + 1
Set sh = GetObject(myPath & MyName).Sheets("Sheet1")
Arr = sh.[a1].CurrentRegion
Workbooks(MyName).Close False
For i = 2 To UBound(Arr)
m = m + 1
For j = 1 To 5
brr(m, j) = Arr(i, j)
Next
Next
End If
MyName = Dir
Loop
Set sh = Nothing
With Sheet1
.Rows("1:3000").ClearContents
.[a1].Resize(1, UBound(Arr, 2)).Value = Arr
.[a2].Resize(m, UBound(brr, 2)).Value = brr
End With
Application.ScreenUpdating = True
MsgBox "汇总完成!汇总了:" & n & "个工作表;共有:" & m & "行数据。" & vbCr & "用时:" & Format(Timer - t, "0.00") & "秒", vbInformation
End Sub |
|