Up Convert Access .mdb file to .accdb

I'm trying to convert an old Access 2002 .mdb file to an Access 2010 .accdb file. I already decoded the file using Access 2003.

The file uses a .mdw file for workgroup security and runs by clicking a link file that has the following link text:

"C:\Program Files\Microsoft Office\Office14\MSACCESS.EXE" "Y:\General\Check Requests\Database\Check Requests.mdb" /WRKGRP "Y:\General\Check Requests\Database\Secured.mdw"

Microsoft's instructions for up converting are contained on this page: http://office.microsoft.com/en-us/access-help/convert-a-database-to-the-accdb-file-format-HA010341552.aspx

When I try to Save and Publish the file as a .accdb file, I get the following error message:

"Could not use 'Y:\General\Check Requests\Database\Check Requests.mdb'; file already in use."

No one else has the file open, and I have to have the file open to convert it.
Who is Participating?
Boyd (HiTechCoach) Trimmell, Microsoft Access MVPCommented:
As previously pointed out, the new ACE database engine that uses the .accdb format does not support the old JET workgroup file.  

Unless you absolutely need some of the new features in the ACE (.accdb) format you do not need to convert it.

If you must updates it to a .accdb then here is what I would do:

1) unsecure the mdb so that it is using the default system.mdw,
2) Test the database.
3) remove all code references to Workgroup stuff. You may nee to replace it with your own custom Logon system
4) Test the database.
5) convert it to a .accdb

Steps to unsecure a database:

1)    Log on as a Member of the Admins Group.
2)    Grant full permissions, including Administer permission, to the built-in Users Group for all Objects in the Database.
3)    Put the Admin User back in the Admins Group if he isn't there.
4)    Clear the Password for the Admin User.
5)    Exit Access.
6)    Restart Access, and log on as Admin.
7)    Create a New, blank Database, and import all the secured Database's Objects using the File ==> Get External Data ==> Import command.

Putting aside your problem for one moment, I take it you know that user level security is not available for accdb files.
DatabaseMX (Joe Anderson - Microsoft Access MVP)Database ArchitectCommented:
Try this:

First, run the procedure below on your existing A2002/3 db, and resolve any issues.
Create a brand new empty ACCDB, then Import all objects (except any linked tables) from the A2002/2003 (which ever it is) into the new container.  Then run this procedure on the ACCDB and resolve any issues.

Open the VBA Editor and from the menu ...Tools>>References ....
If you see any listed as **Missing: <reference name>, including the asterisks and the word Missing, the
you need to fix that first.

Then, follow this procedure:

0) **Backup your MDB BEFORE running this procedure**
1) Compact and Repair the MDB, as follows:
Hold down the Shift key and open the MDB, then from the menu >>Tools>>Database Utilities>>Compact and Repair ...
Close the mdb after the Compact & Repair.
2) Execute the Decompile (See example syntax below) >> after which, your database will reopen.
3) Close the mdb
4) Open the mdb and do a Compact and Repair (#1 above).
5) Close the mdb.
6) Open the mdb:
    a) Right click over a 'blank' area of the database window (container) and select Visual Basic Editor. A new window will open with the title 'Microsoft Visual Basic' ... followed by then name of your MDB.
    b) From the VBA Editor Menu at the top of the window:
        Note ... after the word Compile ...you will see the name of your 'Project' - just an fyi.

7) Close the mdb
8) Compact and Repair one more time.

*** Executing the DeCompile **EXAMPLE**:
Here is an **example** of the command line syntax  (be SURE to adjust your path and file name accordingly) before executing the decompile:

Run this from Start>>Run, enter the following command line - **all on one line** - it may appear like two lines here in the post:
Also, the double quotes are required.

"C:\Program Files\Microsoft Office\Office\Msaccess.exe" /decompile "C:\Access2003Clients\YourMdbNameHERE.mdb"

For more detail on the Decompile subject ... visit the Master on the subject (and other great stuff) Michael Kaplan:


AND ...
Once you get familiar with the Decompile idea (and ALWAYS make a BACKUP first!) ... you can add both Decompile and Compact/Repair to the Right Click menus in Windows Explorer, which I use multiple times daily:

Getting the Decompile and Compact context menu options

Ultimate Tool Kit for Technology Solution Provider

Broken down into practical pointers and step-by-step instructions, the IT Service Excellence Tool Kit delivers expert advice for technology solution providers. Get your free copy now.

PerfishentAuthor Commented:
Can the .mdb be converted to .accdb without the user-level security?
That is what will happen automatically if you save the mdb as an accdb.
I suppose I must say 'should' rather than 'will' based on the inconsistency of Office these days.
DatabaseMX (Joe Anderson - Microsoft Access MVP)Database ArchitectCommented:
umm ... I don't think you will be able to access the ACCDB w/o the mdw file ...

PerfishentAuthor Commented:
We need the user-level security on the database, so I'm going to leave it in .mdb format.
DatabaseMX (Joe Anderson - Microsoft Access MVP)Database ArchitectCommented:
yep ...
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.