Private Sub WorkSheet_Change(ByVal Target As Range)
Set Target = Intersect(Target, Range("C4:D65536"), Me.UsedRange)
If Target Is Nothing Then Exit Sub
Dim cel As Range
For Each cel In Target
If cel <> "" Or Cells(cel.Row, "E") <> "" Then Cells(cel.Row, "E") = Now
Next
End Sub