Cross version compatibility between Access 2010 and Access 2007

Today’s guest writer is Lois Wang—PM for reports and version-to-version compatibility.

I saw a question on the Access TechNet Forum the other day that I’d like to share with the community:

I can't open accdb files in Access 2007 after they've been opened in 2010.”

Access 2010 brings you many new features (Data Macros, Calculated Columns, etc.) that Access 2007 does not understand. If Access 2007 goes ahead and open a Database created/modified in 2010, it will ignore these new features and might even cause data loss or corrupt business logic. For example, a data macro validation rule that is forced in 2010 but ignored in 2007, this can cause data inconsistency. To prevent that from happening, we implemented the feature to block certain databases to open in Access 2007 after it's modified in 2010, or open it as read-only in 2007.

Access 2007 cannot open a database built or modified in Access 2010 if it uses:

  • new sort orders,
  • Access 2010 new encryption, or
  • your application has been published to SharePoint.

For other new features as Data Macros, Calculated Columns, Navigation controls, Web browser controls, and new layout for forms/reports, we did the work to allow the Access application that contains these features to open up in Access 2007 SP2, but objects containing these features are read-only. However, the application does not open in Access 2007 SP1, so please make sure you get SP2 for Access 2007.

What if the people you want to share your application with only has Access 2007? There is a way to “down-grade” your 2010 application to 2007. In short, delete the new features in your application and import all objects into a new Access 2010 blank application. This will create a new app that can work in Access 2007.

The article on http://msdn.microsoft.com/en-us/office/cc907897.aspx has more details.

Office Blogs Comments

Comments: (14) Collapse

  • Clint,

    Would it please be possible to explain why the file format of a database which cannot be opened in Access 2007 is still described as being an Access 2007 format database rather than it being known as an Access 2010 database? I doubt whether I am the only one who is confused by this. The idea of Access 2007 not being able to open an Access 2007 database is not intuitive. Cheers, Alan

  • That would probably be an oversight...

  • Alan,

    Long debated subject in the Access halls that wasn't an easy decision. Technically speaking the file format hasn't changed from an the internal structures perspective. in the past a file format change meant that older client's couldn't open the file. In most cases Access 2007 can open the file provided you have SP2 (except sorts, encryption, and published to the web). In the cases where we couldn't open the file Access 2007 tells the user exactly why.

  • Clint,

    That's fair enough. It makes sense logically, but I am not sure users will see it that way. There will be Access 2007 users dismayed to find they can't open an Access 2007 format database. If the database had been designated an Access 2010 format database, the same users would have been delighted to be able to open an Access 2010 format database on the occasions that Access 2007 can open such databases, i.e. they would see the glass as half full whereas when they find they can't open some Access 2007 format databases they will see the glass as half empty.

    Never mind. There are much more important (good) things happening with Access 2010. Alan

  • Is there a way to programmatically determine from outside the database via DAO or ADODB that an ACCDB file is restricted to 2010?

  • All of my serious custom access application were developed with Access 2003.We are doing fine with Win2k3 and XP-SP3 machines. Most of my forms uses dbiTech components like grid,list and others. Access 2007 is a lesson to be learn! Again CLINT, how about the cross version compatibility of the runtime? do we still need to buy SAGEKEY or Access 2010 will handle a SAGEKEY like runtime installation (without conflicts, A.K.A INDEPENDENT). Thanks and more power!

    ERwin

  • great article, Lois! This is essential foundation knowledge. Thank you Warm Regards,

    Crystal * (: have an awesome day :) *

  • I had a corrupt mdb file last week. so I tried to rebuild it with 2010 an error popped up. It couldn't repair it.What was left was unusable. Having made a copy beforehand i rebuilt it in 2003 and all went well.

    Test Machine: Win7 64, i7, 8 gig

    Reg. Machine: XP 32,Core2 Quad, 4 gig

  • Erwin--we haven't fixed the cross version startup issue. You will need to continue with SageKey if this scenario is important for you. Bill--we recently fixed an issue similar to what you describe. Look for changes in the RTM version.

  • I have a front end / back end application. The back end (the shared database on a server) is in Access 2000 file format, and the front end (on each user's computer) is in Access 2003 file format. The users computer vary from Windows 2000, XP, Vista and "7" ... and run various combinations of Access 2003 Runtime or Access 2007 Runtime (although some have the full version of Access installed). If some of the user's computers eventually upgrade to Access 2010, would there be any database sharing issues? Please remember that the identical application is running on each user's computer. Thanks. bob

  • I tried to run Access 2007 databases in 2010 and every time get "Class not registered" error when setting a varible to an ADODB application connection, ie. "Set con = Application.CurrentProject.Connection" What is the problem?

  • In reference to my last blog, the error is 'Run-time error -214722164 (80040154) Class Not Registered' and happens any time I want to open a recordset. I can't find any documentation for how to do this in VBA for Access 2010, and if I try to re-write the statements, I get the same suggested code and the same error. Am I doing something wrong? Richard

  • Richard. I'm not one of the experts that monitors this group, but I ran a search on your symptom and came across the following link: www.macropool.com/.../mdac.html Hope it helps. bob

  • Hi

    2 Questions - just signed into this blog post but I couldn't use my Windows passport/live account but had to either  create a new account or use OpenID. Is Microsoft retiring the passport/live accounts as you would think the one place they would use them is on their own web sites!

    There does seem to be a serious compatibility issue between Access 2010 and Access 2007 that goes beyond just what is outlined in the link msdn.microsoft.com/.../cc907897.aspx

    If you use the SaveAsText VBA command on an Access 2010 form you will see in the code a lot of properties that are not recognised by Access 2007 such as 'PublishOption, BorderThemeColorIndex' and so on. If you delete all of these properties and then use LoadAsText in an Access 2007 the form can be loaded correctly.

    The suggestion that the file format between 2007 and 2010 is the same is not valid from a user experience point of view. Hopefully Microsoft will recognise this and put a fix in place in the next SP

    Kind regards

    Justin

Comments

Comments: (loading) Collapse