Sub t()
Dim wb As Workbook, sh As Worksheet, fName As String, fPath As String, t As Double
fPath = ThisWorkbook.Path 'If files are in a different folder substitute that path fot 'ThisWorkbook.Path
If Right(fPath, 1) <> "\" Then fPath = fPath & "\"
fName = Dir(fPath & "*.xl*")
Do While fName <> ""
If fName <> ThisWorkbook.Name Then
Set wb = Workbooks.Open(fPath & fName)
For Each sh In wb.Sheets
sh.Copy After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)
'Add a delay in case sheets contain voluminous data
t = Timer + 0.2
Do While Timer < t
DoEvents
Loop
Next
wb.Close False
End If
fName = Dir
Loop
End Sub