I don't think you were taking advantage of 'Target' range in the WS event
Not perfect since it assumes that Col A contains data to determine the last used row, and that you can't add (say) 10 rows which replace the last 5 and add 5 more
In a standard module
Option Explicit
Public iLastRowInStatic As Long
Public wsStatic As Worksheet, wsSummary As Worksheet
In ThisWorkbook
Option Explicit
Private Sub Workbook_Open()
Set wsStatic = Worksheets("Static")
Set wsSummary = Worksheets("Summary")
With wsStatic
iLastRowInStatic = .Cells(.Rows.Count, 1).End(xlUp).Row
End With
End Sub
In WS "Static" module
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Rows(1).Row > iLastRowInStatic Then
Application.ScreenUpdating = False
Application.EnableEvents = False
Call Target.EntireRow.Copy(wsSummary.Cells(wsSummary.Rows.Count, 1).End(xlUp).Offset(1, 0).EntireRow)
iLastRowInStatic = wsStatic.Cells(wsStatic.Rows.Count, 1).End(xlUp).Row
Application.EnableEvents = True
Application.ScreenUpdating = True
End If
End Sub