Sub TEST()
Application.ScreenUpdating = False
For Each ST In Sheets
ST.UsedRange.Offset(1, 0).ClearContents
Next
MyPath = ThisWorkbook.Path
MYFILE = Dir(MyPath & "\*.xls")
Do Until MYFILE = ""
If MYFILE <> ThisWorkbook.Name Then
Set FS = Workbooks.Open(MyPath & "\" & MYFILE)
For I = 1 To 4
With FS.Sheets(I)
.Range("A2:D" & Range("A65536").End(3).Row).Copy ThisWorkbook.Sheets(I).Range("A65536").End(3)(2)
End With
Next
FS.Close
End If
MYFILE = Dir
Loop
Application.ScreenUpdating = True
End Sub
高手!我明白了,谢谢!刚才没注意看清楚就提问了,看来还是要自己动脑筋哈,可以加入统计工作表数量的语句或者自己改数字。
Sub TEST()
Application.ScreenUpdating = False
For Each ST In Sheets
ST.UsedRange.Offset(1, 0).ClearContents
Next
MyPath = ThisWorkbook.Path
MYFILE = Dir(MyPath & "\*.xls")
j = ThisWorkbook.Sheets.Count
Do Until MYFILE = ""
If MYFILE <> ThisWorkbook.Name Then
Set FS = Workbooks.Open(MyPath & "\" & MYFILE)
For I = 1 To j
With FS.Sheets(I)
.Range("A2:D" & Range("A65536").End(3).Row).Copy ThisWorkbook.Sheets(I).Range("A65536").End(3)(2)
End With
Next
FS.Close
End If
MYFILE = Dir
Loop
Application.ScreenUpdating = True
End Sub
改进了一下