Hi All,
I'm new to Access but have a fair bit of experience in Excel VBA as well as Oracle (albeit from 20 years ago). I'm developing a small system to help a friend manage his business (plenty of free time in lockdown) and I'm frustrated by the way Access appears to handle data deletion.
I see this behaviour whether I'm deleting a record directly in a table, in a form or in a datasheet based off that table. When a record is deleted it is immediately removed (i.e. the row/entry disappears), focus moves to the next record and only then is a message displayed asking the user for confirmation of the deletion. If "No" is selected then the row re-appears.
This is very confusing behaviour for a user (as mine immediately commented on) because the confirmation message appears to be asking whether the user wants to delete the record currently being displayed on screen rather than the one that has already been removed.
Here are a couple of screenshots to demonstrate:
Here I right-click on a row (with the FullName of "metric ton") and select Delete Record. The same action can be done using the row selector within a form or datasheet.
Here you can see the row I request to be deleted has already disappeared (the "ounces" row is now selected) and a dialog box has appeared asking for confirmation of the deletion.
The process makes it appear that Access is now asking about deleting the "ounces" entry rather than the "metric ton" entry that has already disappeared. It's an easy thing for a user to miss and can see it leading to confusion.
Is this really the default behaviour? Is there any simple way to change it (and by simple I don't mean having to write code on every single Form_Delete event ? I've tried searching for answers but haven't really found anything useful or simple so hoping somone here can point me in the right direction.
Sala kahle (Zulu for "stay well")