Microsoft KB Archive/160870

= ACC: VBA Functions Break in Database with Missing References =

Article ID: 160870

Article Last Modified on 1/19/2007

-

APPLIES TO


 * Microsoft Access 95 Standard Edition
 * Microsoft Access 97 Standard Edition
 * Microsoft Excel 97 Standard Edition
 * Microsoft Word 97 Standard Edition

-



This article was previously published under Q160870



Moderate: Requires basic macro, coding, and interoperability skills.



SYMPTOMS
If you have a procedure that contains a Visual Basic for Applications function, and your database contains a reference to a missing object library or type library, you may receive the following error message when you compile your modules or run the procedure.

In Microsoft Access 97, Microsoft Excel 97, Microsoft Word 97
Compile Error:

Can't find project or library

In Microsoft Access 7.0
Can't find project or library



CAUSE
Your database contains a reference to a database, type library, or object library that is marked as "Missing:" in the References dialog box.



RESOLUTION
Follow these steps to remove the missing reference:


 * 1) Open your database.
 * 2) Open a module in Design view.
 * 3) On the Tools menu, click References.
 * 4) Click to clear the check box for the type library or object library marked as "Missing:."

An alternative to removing the reference is to restore the referenced file to the path specified in the References dialog box. If the referenced file is in a new location, clear the "Missing:" reference and create a new reference to the file in its new folder.



Steps to Reproduce Behavior
 Open the sample database Northwind.mdb. Create a new module. On the Tools menu, click References. Click Microsoft Excel 8.0 Object Library (or Microsoft Excel 5.0 Object Library if you have Microsoft Excel 7.0) in the Available References box, and then click OK.  Create the following procedure in the module window:

Function Test(x as string) Msgbox Left(x, 5) End Function </li> Save the module as Module1, and then close the database.</li> If you have Microsoft Excel 97, rename the file Excel8.olb to Excel8a.olb. This is the Microsoft Excel 8.0 Object Library file, which is installed by default in the C:\Program Files\Microsoft Office\Office\ folder.

If you have Microsoft Excel 7.0, rename the file Xl5en32.olb to Xl5en32.xyz. This is the Microsoft Excel 5.0 Object Library file, which is installed by default in the C:\MSOffice\Excel folder.</li> Open the sample database Northwind.mdb.</li> Open Module1 in Design view.</li> On the Debug menu (or the Run menu in Microsoft Access 7.0), click Compile Loaded Modules. Note that you receive the error message.</li> Click OK in the error message box, and the References dialog box opens automatically. Note the word MISSING: in front of the Microsoft Excel Object Library.</li> Click Cancel in the References dialog box, and then close the database.</li> Rename Excel8a.olb to Excel8.olb (or rename Xl5en32.xyz to Xl5en32.olb).</li> Repeat steps 8 through 10 and note that the error message no longer appears.</li></ol>

<div class="references_section">