Many MS Access users reported facing “The object was saved in an invalid format and cannot be read” error in Access 2007 and 2016. However, the error can appear in other Microsoft Access versions as well. This error appears while opening, saving, or editing the forms and reports in Access, or exporting reports from Access to any other external sources. It usually occurs when MS Access fails to read the objects within the database. The objects can be forms, reports, queries, tables, etc.
Microsoft Access throws this error if it detects any issue with the database file. The reasons might be:
- Corrupted objects within the database
- Incompatible file format
Now, let’s see how to resolve this MS Access error.
You can start with the simple troubleshooting steps, like restarting your system or temporarily stopping your anti-virus software. If you are getting this error while modifying the reports within the database, then make sure you have all the desired permissions on the database. You can also try to open the reports in design mode. Sometimes, opening reports in the design view resolves the issue. If the error persists, then try the below methods.
The error “The object was saved in an invalid format and cannot be read” in MS Access can occur if the file you’re trying to open is not compatible with your MS Access version. For example, you’re opening an MDB file (default file format in MS Access version until 2007) in a latest version (2010 and later). In such a case, you can change the Access file format to a supportable format. Here are the steps to do so:
- In your Access database, go to File > Save As. Then, select Save Database As.
- Click Save As, write the file name, select the file type, and click the Save option.
Method 2: Import Database Objects into a New Database and Recreate the Reports
Many users have confirmed that they’re able to fix the error by importing the database into a new empty database and then recreating the reports. Importing data from the damaged database file into a new file recreates the structure of the database file, including forms, reports, and other objects. Here’s how to do so:
- In your Access application, click the Blank Desktop database option to create a new database file.
- Click the External Data tab and then click the Import Access database option.
- In the Get External Data – Access Database window, select the Browse option to select the affected database file.
- Now, click the option “Import tables, forms, reports, macros, and modules into the current database.”
- Select the required objects (reports, forms, modules, queries, etc.) of the database you need to import into the fresh database.
- Click OK.
Method 3: Uninstall Windows Updates
Many Access users have reported encountering the error after installing the Windows updates. If this is also the case with you, then you can uninstall the updates by following the below steps:
- Go to the Windows Search option, type Settings, and then press the Enter key.
- In Windows Settings, click the Update & Security option.
- Under Windows Update, click View Update History.
- In the View Update History window, click Uninstall Updates.
- Select the recent updates (you want to uninstall) and then click Uninstall.
Method 4: Decompile and then Recompile the Database
You can get the error “The object was saved in an invalid format and cannot be read” while using VBA code to open file or report in the Access database. It usually occurs if there is an issue with the code you’re executing. To resolve the issue, you can decompile the database. Decompiling the database reverts the database to its original state.
To decompile the database, open Run window, type msaccess.exe /decompile, and then press the Enter key.
After decompiling, recompile the database. Here are the steps:
- In Access database, click Database Tools and then click the Visual Basic option.
- In the Microsoft Visual Basic for Applications (VBA) Editor, click Debug and Compile.
Method 5: Repair your Access Database File
The error “The object was saved in an invalid format and cannot be read” can also occur due to corruption in the database. In this case, the first option is to use the built-in tool in MS Access – Compact and Repair. This utility can help you resolve minor corruption issues in the database file. To utilize this utility, follow these steps:
Note: Ensure that there are no active users on the database file you’re going to repair.
- In your Access application, click on the Templates page and click Blank Database.
- Click File and then click Close.
- Next, click Database Tools and then click Compact and Repair Database.
- Select the database file (in which you are getting the error) in the Database to Compact From dialog box.
- Select the Compact option.
- After the process is complete, the compacted and repaired database file is saved at the exact location where the original database file is saved.
In case the Compact and Repair utility fails to repair the database file, then the best option is to use a third-party Access repair tool to repair the corrupted database file. Stellar Repair for Access is one such tool that can easily repair severely corrupted database file. This tool can recover all the objects from corrupt database file, with complete integrity. This helps fix all the corruption-related errors. The tool is compatible with all versions of Microsoft Access – from 2007 to 2019.
Closure
The error “The object was saved in an invalid format and cannot be read” usually appears if the Access application fails to read the objects (forms, reports, queries, etc.) in the database file. You can decompile the database and then recompile it, uninstall the updates, and follow other troubleshooting methods described in this post to fix the issue. If the issue has occurred due to severely corrupted database file, then consider using Stellar Repair for Access. It can repair corrupted forms, queries, tables, and other objects in the database file. You can download the trial version of the tool to scan the corrupt .accdb/.mdb file and preview the repaired objects.
Was this article helpful?