Access guarda por defecto los cambios al cerrar el formulario, añadir un botón para guardar es una opción del usuario que nunca desactivara un proceso natural.
Una forma de forzar que sea indispensable utilizar el botón, es añadir una línea en el evento 'Antes de actualizar' del FORMULARIO que reponga los datos que se modificasen y no fueron guardados.
Para ello se consulta la propiedad Dirty (indicador de modificaciones en los datos) y si los hay se aplica el comando 'UNDO' que repone los datos modificados.
Si hay cambios la propiedad Dirty se activa, al guardar el registro (asentar los datos en la tabla) la propiedad se desactiva.
Si se hacen cambios se activa Dirty, al guardarlos se desactiva
Por lo que si se guarda (con el botón) y se sale del formulario (o del registro activo) no hará nada (dirty esta desactivado)
Pero si se modifica algo (y no se utiliza el botón para guardar) Dirty esta activado: aplicara un UNDO y destruirá los cambios no guardados.
El evento afectado del formulario:
El evento del botón guardar: