Option Explicit
Dim x As Variant
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column < 5 Or Target.Count > 1 Then Exit Sub
If IsNumeric(Target) And Target.Value < 0 Then Target = x
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
x = Target.Value
End Sub