"База данных не может быть открыта, так как содержащийся в ней проект VBA не может быть прочитан" при запуске скомпилированного файла Microsoft Access MDE, ACCDE или ADE в Access 2010

Сводка

Базы данных Microsoft Access, созданные с помощью 64-разрядной версии Microsoft Access 2010, русская версия и скомпилированные как файлы MDE, ACCDE и ADE, должны быть перекомпилированы в Microsoft Access 2010, русская версия с пакетом обновления 1 (SP1) для правильной работы с Access 2010 с пакетом обновления 1 (SP1).

Базы данных Access 2010 MDE, ACCDE и ADE, созданные с помощью первоначального выпуска (RTM) версии 64-разрядной версии Access 2010, несовместимы с пакетом обновления 1 (SP1). Кроме того, базы данных MDE Для Access 2010 MDE, ACCDE и ADE, скомпилированные в Access 2010 с пакетом обновления 1 (SP1), не будут работать с версией RTM. Скомпилированные базы данных MDE, ACCDE и ADE необходимо повторно создать на основе исходных баз данных ACCDB, MDB или ADP.

Базы данных Access, созданные с помощью 32-разрядной версии Access 2010 и скомпилированные как файлы MDE, ACCDE и ADE, будут правильно работать с Microsoft Access 2010, русская версия с пакетом обновления 1 (SP1). Однако базы данных Access MDE, ACCDE и ADE, созданные с помощью 32-разрядной версии Microsoft Access 2010, русская версия с пакетом обновления 1 (SP1), не будут правильно работать с версией RTM.

Симптомы

Рассмотрим следующие сценарии.

  • Сценарий 1. Вы создаете скомпилированный файл Access 2010 MDE, ACCDE или ADE на компьютере, на котором установлен Access 2010 с пакетом обновления 1 (SP1) (64-разрядная версия). Затем вы попытаетесь использовать файл на компьютере, на котором установлена выпускная версия Access 2010 (64-разрядная версия).
  • Сценарий 2. Вы создаете скомпилированный файл Access 2010 MDE, ACCDE или ADE на компьютере, на котором установлена выпускная версия Access 2010 (64-разрядная версия), а затем пытаетесь использовать файл на компьютере, на котором установлен Пакет обновления 1 (SP1) Access 2010 (64-разрядная версия).
  • Сценарий 3. Вы создаете скомпилированный файл Access 2010 MDE, ACCDE или ADE на компьютере, на котором установлен Access 2010 с пакетом обновления 1 (SP1) (32-разрядная версия), а затем пытаетесь использовать файл на компьютере, на котором установлена выпускная версия Access 2010 (32-разрядная версия).

В этих сценариях при первой попытке запустить код VBA появляется следующее сообщение об ошибке:

The database cannot be opened because the VBA project contained in it cannot be read. The database can be opened only if the VBA project is first deleted. Deleting the VBA project removes all code from modules, forms and reports. You should back up your database before attempting to open the database and delete the VBA project.

To create a backup copy, click Cancel and then make a backup copy of your database. To open the database and delete the VBA project without creating a backup copy, click OK.

Причина

Эта проблема возникает из-за того, что Access 2010 с пакетом обновления 1 (SP1) использует более новую версию файла VBE7.dll (версия 7.00.1619).

Разрешение

Чтобы устранить эту проблему, скомпилируйте приложение Access 2010 MDE, ACCDE или ADE с помощью версии Access 2010, в которой планируется развернуть файл MDE, ACCDE или ADE.

Дополнительные сведения

В следующих таблицах приведена сводка по скомпилированным базам данных, которые будут работать с какой версией Access 2010. В таблицах предполагается, что вы открываете 32-разрядный файл MDE, ACCDE или ADE в 32-разрядной версии Microsoft Access или открываете 64-разрядный файл MDE, ACCDE или ADE в 64-разрядной версии Access. Невозможно открыть 32-разрядный файл MDE, ACCDE или ADE в 64-разрядной версии Access, а также 64-разрядный файл MDE, ACCDE или ADE в 32-разрядной версии Access.

Файл MDE, ACCDE или ADE, созданный в Access 2010 RTM

Тип файла Access 2010 RTM Access 2010 с пакетом обновления 1 (SP1)
32-разрядные MDE, ACCDE или ADE Работает Работает
64-разрядная версия MDE, ACCDE или ADE Работает Возникает ошибка

Файл MDE, ACCDE или ADE, созданный в Access 2010 с пакетом обновления 1 (SP1)

Тип файла Access 2010 RTM Access 2010 с пакетом обновления 1 (SP1)
32-разрядные MDE, ACCDE или ADE Возникает ошибка Работает
64-разрядная версия MDE, ACCDE или ADE Возникает ошибка Работает