Private Sub Worksheet_Change(ByVal Target As Range) 
    Dim Found As Range 
    If Target.Column <> 1 Then Exit Sub 
     
    Set Found = Range("A1", Cells(Rows.Count, 1).End(xlUp)).Find _ 
    (Target.Value, After:=Target.address, LookIn:=xlValues, lookat:=xlWhole)
    If Not Found Is Nothing Then 
        If Target.Address = Found.Address Then Exit Sub 
        MsgBox "Ther is a duplicate entry at row " & Found.Row & "." 
        Target = "" 
    End If 
End Sub