|
加个判断吧- Sub 导入()
- Dim MyPath, MyName, wk As Workbook, Sht As Worksheet, m As Integer, arr, n As Integer, u As Integer, x&
- Application.ScreenUpdating = False
- MyPath = ThisWorkbook.Path
- MyName = Dir(MyPath & "" & "*.xls")
- m = 0: n = 0 'MsgBox
- Do While MyName <> ""
- If MyName <> ThisWorkbook.Name Then
- Set wk = Workbooks.Open(MyPath & "" & MyName)
- m = m + 1 'MsgBox
- For Each Sht In wk.Sheets
- arr = Sht.UsedRange
- If IsArray(arr) = False Then GoTo PP
- n = n + 1
- With ThisWorkbook.Sheets("数据源")
- x = x + 1
- u = .Cells(.Rows.Count, 1).End(xlUp).Row
- If x = 1 Then
- .Range("A1").Resize(UBound(arr), UBound(arr, 2)) = arr
- MsgBox "xx"
- Else
- .Range("A" & u + 1).Resize(UBound(arr), UBound(arr, 2)) = arr
- End If
- 'u = .UsedRange.Row + .UsedRange.Rows.Count
- '.Range("A" & u).Resize(UBound(arr), UBound(arr, 2)) = arr
- End With
- Erase arr '释放数组
- PP:
- Next
- wk.Close False
- End If
- MyName = Dir
- Loop
- With Sheet2
- .Activate
- End With
- Application.EnableEvents = True
- End Sub
复制代码 |
|