Access 2002

Диалоговое окно, открываемое командой Tools


Для изменения имени проекта используется диалоговое окно, открываемое командой Tools  <Имя проекта> Properties.

Будьте осторожны, выполняя частичное сохранение изменений. Если вы модифицируете несколько объектов VBA и в диалоговом окне для их сохранения снимаете выделения с нескольких из них и сохраняете проект, то VBA его автоматически декомпилирует. Не зная об этой его особенности, можно случайно передать клиенту неоткомпилированный код.

Откомпилированное приложение занимает больше места на диске. Как уже говорилось, VBA хранит в базе данных как исходный, так и откомпилированный код. С другой стороны, откомпилированному приложению нужно меньше памяти, поскольку в ходе его работы VBA загружает только откомпилированный код. Если же вы захотите, чтобы модули компилировались по мере их загрузки, VBA должен будет сначала загружать их исходный код.

Удаляются ли модули из памяти

Загруженные модули не удаляются из памяти до самого закрытия приложения. VBA загружает их по мере необходимости, но уж если модуль загружен, он остается в памяти. Это значит, что VBA поддерживает динамическую загрузку модулей, но не поддерживает их динамическую выгрузку. Однако не забывайте, что VBA загружает модуль, как только вы обращаетесь к имеющейся в нем процедуре или переменной.

В процессе разработки приложения динамическая загрузка модулей может привести к сильному уменьшению свободного объема памяти. Если вы захотите ее освободить, закройте базу данных и снова ее откройте. Команда Debug  Compile <Имя проекта> вызывает загрузку в память всех модулей приложения. Поэтому после ее выполнения может быть полезно закрыть и снова открыть базу данных, чтобы в памяти присутствовали только те модули, которые вы тестируете.

В предыдущих версиях Access при большом размере базы данных проект VBA мог неожиданно оказаться разрушенным. Мы еще не выяснили, случается ли такое в Access 2002, но вам следует знать о возможности такой ситуации.

Комментарии закрыты