Здравствуйте.
Так подойдёт? Предполагается, что строки добавляются в конец столбца
[vba]Код
Private Sub Worksheet_Change(ByVal Target As Range)
Dim irow&, cl As Range, rowsDel As Range
If Target.Column <> 4 Then Exit Sub
For Each cl In Target
For irow = 2 To Target.Row - 1
If cl.Value = Cells(irow, 4) Then
If rowsDel Is Nothing Then Set rowsDel = Union(Rows(irow), Rows(cl.Row)) Else Set rowsDel = Union(rowsDel, Rows(irow), Rows(cl.Row))
Exit For
End If
Next irow
Next cl
If Not rowsDel Is Nothing Then rowsDel.Delete
End Sub
[/vba]