Pressing "Delete" does not stop the code working for me. It just puts " Humayan" in the cell.
Try running this version of the code, which will not add anything if you are deleting the contents of cell A1, and won't run if you delete rows, columns, or cells:
VBA Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.CountLarge > 1 Then Exit Sub
If (Not Intersect(Target, Range("A1")) Is Nothing) And (Range("A1") <> "") Then
Application.EnableEvents = False
Range("A1").Value = Range("A1").Value & " Humyaun"
Application.EnableEvents = True
End If
End Sub