One thing you can do is to look at the form properties: AllowAddition, AllowEdit, etc. They govern what can be done on the form using standard Access navigation. If you disallow addition, then the ONLY way you can add data is through a command button that does a Save action for you. HINT: The button wizard has an option to do exactly that, because I've used it. You also need to consider something that checks for the form being "dirty" (a form property but only of bound forms), because in that case you can also turn off the navigation on the form (temporarily). That way, you will have not way on the form to save anything by navigation. WARNING: You need event traps on the Close event, BeforeUpdate event, and a few others. What I do is have a Boolean variable in the declaration area of the form's class module. I set that flag if someone has clicked the SAVE button because the CLICK event first first. Inside the click event I have code to do the actual save, so I have time to toggle that flag.
When the BeforeUpdate event fires, it can see the flag I set and allow the update. If someone tries to use any other method including closing the form, you can block that by returning a CANCEL=TRUE on whatever event fires when that flag is NOT set.