"Det går inte att öppna databasen eftersom VBA-projektet som finns i den inte kan läsas" när du kör en kompilerad Microsoft Access MDE-, ACCDE- eller ADE-fil i Access 2010

Anteckning

Office 365 ProPlus byter namn till Microsoft 365-appar för företag. Mer information om den här ändringen finns i det här blogginlägget.

Sammanfattning

Microsoft Access-databaser som skapas med 64-bitarsversionen av Microsoft Access 2010 och som sammanställs som MDE-, ACCDE- och ADE-filer måste kompileras om i Microsoft Access 2010 Service Pack 1 (SP1) för att fungera korrekt med Access 2010 SP1.

Access 2010 MDE-, ACCDE- och ADE-databaser som skapats med den första versionen, eller RTM, 64-bitarsversionen av Access 2010 är inte kompatibla med SP1, Dessutom fungerar inte Access 2010 MDE-, ACCDE- och ADE-databaser som kompilerats i Access 2010 SP1 med RTM-versionen. Kompilerade MDE-, ACCDE- och ADE-databaser måste skapas på nytt från sina käll-ACCDB-, MDB- eller ADP-databaser.

Access-databaser som skapas med 32-bitarsversionen av Access 2010 och som sammanställs som MDE-, ACCDE- och ADE-filer fungerar korrekt med Microsoft Access 2010 SP1. Men Access MDE-, ACCDE- och ADE-databaser som skapas med 32-bitarsversionen av Microsoft Access 2010 SP1 fungerar inte korrekt med RTM-versionen.

Symptom

Tänk dig följande scenarier:

  • Scenario 1: Du skapar en kompilerad Access 2010 MDE-, ACCDE- eller ADE-fil på en dator där Access 2010 SP1 (64-bitars) är installerat. Sedan försöker du använda filen på en dator där den släppta versionen av Access 2010 (64-bitars) är installerad.
  • Scenario 2: Du skapar en kompilerad Access 2010 MDE-, ACCDE- eller ADE-fil på en dator där versionsversionen av Access 2010 (64-bitars) är installerad och sedan försöker du använda filen på en dator där Access SP1 2010 (64-bitars) är installerat.
  • Scenario 3: Du skapar en kompilerad Access 2010 MDE-, ACCDE- eller ADE-fil på en dator där Access 2010 SP1 (32-bitars) är installerat och sedan försöker du använda filen på en dator där versionsversionen av Access 2010 (32-bitars) är installerad.

I de här scenarierna visas följande felmeddelande första gången du försöker köra VBA-kod:

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.

Orsak

Det här problemet uppstår eftersom Access 2010 SP1 använder en nyare version av VBE7.dll -filen (version 7.00.1619).

Lösning

Du kan lösa problemet genom att kompilera Access 2010 MDE-, ACCDE- eller ADE-programmet med hjälp av den version av Access 2010 där du tänker distribuera MDE-, ACCDE- eller ADE-filen.

Mer information

Följande tabeller innehåller en sammanfattning av vilka kompilerade databaser som fungerar med vilken version av Access 2010. Tabellerna förutsätter att du öppnar en 32-bitars MDE-, ACCDE- eller ADE-fil i 32-bitarsversionen av Microsoft Access eller att du öppnar en 64-bitars MDE-, ACCDE- eller ADE-fil i 64-bitarsversionen av Access. Du kan inte öppna en 32-bitars MDE-, ACCDE- eller ADE-fil i 64-bitars access och du kan inte öppna en 64-bitars MDE-, ACCDE- eller ADE-fil i 32-bitars access.

En MDE-, ACCDE- eller ADE-fil som skapades i Access 2010 RTM

Typ av fil Access 2010 RTM Access 2010 SP1
32-bitars MDE, ACCDE eller ADE Fungerar Fungerar
64-bitars MDE, ACCDE eller ADE Fungerar Felet inträffar

En MDE-, ACCDE- eller ADE-fil som har skapats i Access 2010 SP1

Typ av fil Access 2010 RTM Access 2010 SP1
32-bitars MDE, ACCDE eller ADE Felet inträffar Fungerar
64-bitars MDE, ACCDE eller ADE Felet inträffar Fungerar