Hi Jim,
I amended your userform code as suggested in my previous post.
I then invoked the dataform (using your userform menu) and added a new
record which consisted (solely) of a forename "JOE". As expected (and
intended), I received a msgbox notification of a missing surname. I then
re-invoked the dataform, located the defective record and appended the
missing surname BLOGGS. To be consistent with your situation, I then
reopened the dataform and deleted the JOE BLOGGS record. The record was
deleted without problem and without any specious alert.
Incidentally, precisely because deleting records via the dataform does not
reset the used range, I changed your (implicit) used range condition to use
the database range instead. Consequently, for these purposes, the extent of
the used range has no relevance.
I have, therefore, sent you the amended file and I invite you to retest.