Broken Reference to the file dao2535.tlb error message on opening Access Data Base created in Access 97

Posted on 2007-11-28
Last Modified: 2012-06-27
I have been using an Access Database originally created with Access 97 on a laptop which has upgraded to Access 2002.  I am now attempting to open the same Access Database on a computer which is running Windows 2003 and Microsoft Access 2003 and I am getting the following error message: "Your Microsoft Access database or project contains a missing or broken reference to the file 'dao2535.tlb' version 3.5."

The database contains historical data going back to 1991 and various reports which would require a significant effort to recreate and at the very least I need to export the tables to recreate the database.  My laptop has gone down and I am in a critical time cruch to produce reports from the database and need to resolve my problem ASAP.  Your prompt response would be greatly appreciated.

Grant Keener
Question by:gkeener3
  • 4
  • 3
  • 2
  • +3
LVL 65

Expert Comment

by:Jim Horn
ID: 20366699
>I am now attempting to open the same Access Database on a computer which is running Windows 2003 and Microsoft Access 2003
This computer does not have 'Microsoft DAO 2.5/3.5 Compatibility Library' installed on it, which your app apprently references, therefore requires in order for it to run.

Go find it off your laptop, then paste it into this new pc.  Then re-open the Access app.
On my pc this is at c:\Program Files\Common Files\Microsoft Shared\DAO\DAO2535.tlb
LVL 75
ID: 20366720
Ditto for that location on my PC's.

LVL 20

Expert Comment

ID: 20366930
or select a later version from the Reference List.  You probably have one and it will probably work.

Scott C

Author Comment

ID: 20366970
I don't have access to my laptop to copy the file and the VB editor does not give me access to the Tool:Reference tool bar and I have no experience editing the VB coding.  Is the dao2535.tlb a unique file created by the Access Database or is it a generate file which I can down load and install on my new computer?
LVL 75
ID: 20366979
It's an Office file that is standard in any Office installation.

LVL 65

Accepted Solution

Jim Horn earned 125 total points
ID: 20367009
>Is the dao2535.tlb a unique file created by the Access Database
No, it is a Microsoft-created object library that was the primary means of data access in all Access versions up to 2000-ish.

Last I remember there were some versions of Windows, XP and higher, (Office XP and higher?) that did not automatically have DAO installed.
This was along the thinking that M$ was going to discontinue DAO, but has yet to actually do so.

Copy the file from any machine you can find it on and paste it into the new machine.  Until proven otherwise, that should resolve your issue without any coding.
Backup Your Microsoft Windows Server®

Backup all your Microsoft Windows Server – on-premises, in remote locations, in private and hybrid clouds. Your entire Windows Server will be backed up in one easy step with patented, block-level disk imaging. We achieve RTOs (recovery time objectives) as low as 15 seconds.


Author Comment

ID: 20367011
Is this a file that I can down load and install on my new computer?
LVL 75

Assisted Solution

by:DatabaseMX (Joe Anderson - Access MVP)
DatabaseMX (Joe Anderson - Access MVP) earned 125 total points
ID: 20367013
LVL 20

Assisted Solution

clarkscott earned 125 total points
ID: 20367097
There's a few newer versions.
From the database window, click MODULES.
If there are any on the list, click and open in design mode, otherwise create a new one.
At the top of the code screen, click on Access' TOOLS and select REFERENCES.
You will see one (dao) that is MISSING (it will say this in the description).
Uncheck the box to the right.
Scroll down the list and locate another DAO version (3.51, etc.) and click the box on the right.
Close Access

PS.  You don't have to save the module if you created a new one.

That's all there is to it.

Scott C

Author Comment

ID: 20367107
I downloaded the file dao2535.tlb and copied it into my directory  C:\Program Files\Common Files\Microsoft Shared\DAO.  When I open the Database I am still getting the same error message. Am I doing something wrong or do I need to do something else?
LVL 75
ID: 20367309
Open the vba editor.
If you see 'Missing' for this file, uncheck it.
Then, Browse to the Program Files location and select the file you downloaded.
Close the window .
Then ... Debug>>Compile.
If this works, you should be ok.

LVL 84

Assisted Solution

by:Scott McDaniel (Microsoft Access MVP - EE MVE )
Scott McDaniel (Microsoft Access MVP - EE MVE ) earned 125 total points
ID: 20367549
You could also most likely upsize this to 2000 or greater with no issues. Of course, if you do this you wouldn't be able to work with that copy in Access 97 any longer ...

Expert Comment

ID: 21208283
Forced accept.

EE Admin

Featured Post

Enterprise Mobility and BYOD For Dummies

Like “For Dummies” books, you can read this in whatever order you choose and learn about mobility and BYOD; and how to put a competitive mobile infrastructure in place. Developed for SMBs and large enterprises alike, you will find helpful use cases, planning, and implementation.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

When you are entering numbers in a speadsheet, and don't remember what 6×7 is, you just type “=6*7" instead. It works in every cell! This is not so in Access. To enter the elusive 42 in a text box, you have to find a calculator, and then copy the re…
Regardless of which version on MS Access you are using, one of the harder data-entry forms to create is one where most data from previous entries needs to be appended to new records, especially when there are numerous fields and records involved.  W…
In Microsoft Access, learn different ways of passing a string value within a string argument. Also learn what a “Type Mis-match” error is about.
In Microsoft Access, learn how to use Dlookup and other domain aggregate functions and one method of specifying a string value within a string. Specify the first argument, which is the expression to be returned: Specify the second argument, which …

867 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

13 Experts available now in Live!

Get 1:1 Help Now