Sub DeleteRows()
Dim LastLig As Long
Dim c As Range
Application.ScreenUpdating = False
With Worksheets("Sheet1") 'Adapte to your sheet name
LastLig = .Cells(.Rows.Count, "A").End(xlUp).Row
Set c = .Range("A1:A" & LastLig).Find("END", LookIn:=xlValues, lookat:=xlPart) 'or xlwhole in place of xlpart
If Not c Is Nothing Then
If c.Row < LastLig Then .Rows(c.Row + 1 & ":" & LastLig).Delete
Set c = Nothing
End If
End With
End Sub
c = nothing. On the other hand, the [code]WorksheetFunction.Match will cause an error. Note that neither code uses a loop.
So, if everything is good and the word exists, both codes find the first instance of "end" and delete all rows below, and they would be considered equal.
One little note, do be careful about this
[pre]Range("A" & I & ":A" & Sheet1.Range("A" & Rows.Count).End(xlUp).Row).EntireRow.Delete