Hi LFKim2018,

Did you want to check if the A cell to be checked against D or not ?
you have removed that and replaced by checking the previous row in the same column

also your change is not doing what you want Target should be NOT greater then previous row

Private Sub Worksheet_Change(ByVal Target As Range)
   If Not Intersect(Target, Range("A:A")) Is Nothing Then
      If IsNumeric(Target.Value) Then
         If Target > Target.Offset(0, 3) Target < Target.Offset(-1, 0) Then
            MsgBox "Cell A" & Target.Row & " greater than Cell D" & Target.Row & " Not allowed!", vbCritical
            Target.Value = vbNullString
            Target.Select
            Exit Sub
         End If
      End If
   End If
End Sub
Please try to completely explain your needs, of what you expect it to do.
That way we can make it do that from the first time we put time in it

Grtz