Когда и зачем использовать опцию /decompile. С цитатами, прологом и эпилогом.
Д.Ф. 29.01.2002
Мне пришло довольно много откликов на совет про DECOMPILE. Я честно отвечал, что источника не помню, в чем смысл - можно только догадываться (мусор бывает не только в данных, но и в модулях..., при бурной отладке компиляция повторяется часто и не всегда корректно (см.ниже) и т.п.) Однако. Перечитывая Гетца & С нашел у них целый абзац. Итак, Гетц,Литвин,Гилберт Access-2000. И-во "Ирина" BHV, Киев. Том 1. Стр.975
... Если, работая с большим приложением, вы обнаружите, что VBA ВЕДЕТ СЕБЯ СТРАННО (большие буквы мои Д.Ф.), попробуйте воспользоваиться недокументированной опцией командной строки /decompile. Однако, сначала сделайте резервную копию своего приложения.... Затем запустите базу с ключом /decompile.... Сохраните базу данных и закройте Access. Снова загрузите Access ... и тут же откомпилируйте проект. Снова закройте базу... Теперь база данных должна быть "ЧИСТОЙ" и готовой к работе...
И еще совет по корректной компиляции. там же. стр.974
Будьте осторожны с ЧАСТИЧНЫМ СОХРАНЕНИЕМ изменений. Если вы модифицируете несколько объектов VBA и в диалоговом окне, предлагающем их сохранить (ЗНАКОМАЯ КАРТИНА, А - Д.Ф.) СНИМЕТЕ выделение с нескольких из них и сохраните проект, VBA его автоматически ДЕКОМПИЛИРУЕТ (!!! Д.Ф.). Не зная об этой его особенности, можно случайно передать клиенту неоткомпилированный код. ---------------------
Вообще, надо бы статейку про компиляцию поручить форумодержателям.