Try this ...
Option Explicit
Sub CombineMySheets()
Dim ws As Worksheet, newWs As Worksheet, wsRow As Long, newRow As Long
Application.ScreenUpdating = False
Application.EnableEvents = False
Set newWs = Sheets.Add(before:=Sheets(1))
Sheets(2).Rows("1:1").Copy newWs.Rows("1:1")
For Each ws In ActiveWorkbook.Worksheets
If ws.Name <> newWs.Name Then
newRow = newWs.Range("A65536").End(xlUp).Row + 1
wsRow = ws.Range("A65536").End(xlUp).Row
ws.Range("A2", ws.Cells(wsRow, 30)).Copy newWs.Cells(newRow, 1)
End If
Next ws
newWs.Name = "Master" 'Must not be duplicated
Application.CutCopyMode = False
Application.ScreenUpdating = True
Application.EnableEvents = True
End Sub
** EDIT: Btw, I assumed you wanted 30 columns, as stated, so that part is hardcoded. We can change it to dynamic if you'd like.