Lo que yo suelo hacer en Acces, es lo siguiente:
1º.- La bases de datos en Acces, van engordando, solamente con la manipulación de la base de datos, independientemente que esté dividida la base de datos.
2º.- Anulo las teclas de control de para que los usuarios tengan que salir desde el formulario de Usuario y contraseña.
3º.- Solo se pued compactar cuando no hay más usuarios.
4º.- Cuando es el último, en el botón de salir en el evento Clic. hago un Call al módulo Compactar que tiene el código que tu me envias.
Ejemplo:
If MsgBox("¿ Deseas Salir del Programa ?", vbOKCancel + vbQuestion + vbDefaultButton2, "SALIDA...") = vbOK Then
Call COMPACTAR
DoCmd.Close
DoCmd.Quit acQuitSaveAll
End If
5º.- Este código lo que hace es ir a la barra de herramientas y compactar.
6º.-También lo puedes hacer de la siguiente manera:
Application.SetOption "AUTO COMPACT", True
DoCmd.Close
Application.Quit