You don't need to activate the sheets. This code should copy all the data to the next empty row in the master sheet for each sheet.
Option Explicit
Sub Summarize()
Dim ws As Worksheet
Dim lastRng As Range
With Application
.ScreenUpdating = False 'speed up code
ThisWorkbook.Sheets("Master Budget").Rows("5:500").ClearContents 'clear
For Each ws In ThisWorkbook.Worksheets
Set lastRng = ThisWorkbook.Sheets("Master Budget").Cells(Rows.Count, 1).End(xlUp).Offset(1, 0)
Select Case ws.Name
Case "Master Budget" 'exlude
'do nothing
Case Else
'copy data from individual sheets
ws.Range("A5", Range("h" & Range("A65536").End(xlUp).Row)).Copy lastRng
End Select
Next
.CutCopyMode = False 'clear clipboard
.ScreenUpdating = True
End With
End Sub
Bookmarks