29. Jak zdefragmentować bieżącą bazę z kodu VBA?

Narzucającą się odpowiedzią na powyższe pytanie jest  polecenie:

DoCmd.RunCommand acCmdCompactDatabase 'ten kod nie działa
Niestety próba wykonania tego kodu kończy się komunikatem: "Nie można kompaktować otwartej bazy danych, kiedy wykonywane jest makro lub kod systemu Visual Basic".

Jak zatem poradzić sobie z tytułowym zadaniem? Zupełnie niezwykły (jak dla mnie) sposób jest taki:

CommandBars.FindControl(id:=2071).accDoDefaultAction 'działa OK
A dlaczego niezwykły? Bo nie jest udokumentowany i ktoś kiedyś musiał wpaść na ten pomysł, żeby to co prawie niemożliwe stało się tak proste...

K.P.