Option Explicit
Sub CopyOverSheetData()
Dim ws As Worksheet
Dim wsCopy As Worksheet
Dim rngUsed As Range
Dim rngPaste As Range
'The activesheet is the sheet where data will be pasted!
Set wsCopy = ActiveSheet
Set rngPaste = wsCopy.Range("A1")
'Disable screenupdating and set calculation to manual mode
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
For Each ws In ThisWorkbook.Worksheets
If ws.Name <> wsCopy.Name Then
Set rngUsed = ws.UsedRange
'Copy and paste data
rngUsed.Copy
rngPaste.PasteSpecial (xlPasteAll) 'Change parameter to "xlPasteValuesAndNumberFormats" if you only want values
Application.CutCopyMode = False
'Offset paste range ready for next sheet
Set rngPaste = rngPaste.Offset(rngUsed.Rows.Count)
End If
Next ws
'Reset screenupdating and calculation mode
Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic
MsgBox "Done!"
End Sub