Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

"Can't find Project or Library" for standard VBA functions

So I'm having to run someone else's excel app on my PC, and I'm getting "Can't find Project or Library" on standard functions such as date, format, hex, mid, etc.

Some research indicates that if I prefix these functions with "VBA." as in "VBA.Date" then it'll work fine.

Webpages suggest it has to do with my project references on my system, whereas they must be ok on the developer's system. I'm going to be dealing with this for some time from others, and will be distributing these applications to many others, so I need to understand what's wrong with my excel setup that I need to fix, or what needs to be changed in the xls file so that it'll run on a variety of systems. I'd like to avoid making everyone use "VBA." as an explicit reference, but if there's no ideal solution I suppose that's what we'll have to do.

  • How do I make "VBA." implicit in my project properties/references/etc?

-Adam

like image 268
Adam Davis Avatar asked Feb 03 '09 14:02

Adam Davis


People also ask

Why do I get can't find project or library?

This error is usually caused by the user's MS Access or MS Excel program. The reason is that the program has a reference to an object or type of library which is missing and hence not found by the program. Accordingly, the program cannot use VB or Micro based functions or buttons.


2 Answers

I have seen errors on standard functions if there was a reference to a totally different library missing.

In the VBA editor launch the Compile command from the menu and then check the References dialog to see if there is anything missing and if so try to add these libraries.

In general it seems to be good practice to compile the complete VBA code and then saving the document before distribution.

like image 58
Dirk Vollmar Avatar answered Oct 04 '22 23:10

Dirk Vollmar


I had the same problem. This worked for me:

  • In VB go to Tools » References
  • Uncheck the library "Crystal Analysis Common Controls 1.0". Or any library.
  • Just leave these 5 references:
    1. Visual Basic For Applications (This is the library that defines the VBA language.)
    2. Microsoft Excel Object Library (This defines all of the elements of Excel.)
    3. OLE Automation (This specifies the types for linking and embedding documents and for automation of other applications and the "plumbing" of the COM system that Excel uses to communicate with the outside world.)
    4. Microsoft Office (This defines things that are common to all Office programs such as Command Bars and Command Bar controls.)
    5. Microsoft Forms 2.0 This is required if you are using a User Form. This library defines things like the user form and the controls that you can place on a form.
  • Then Save.
like image 22
andres Avatar answered Oct 05 '22 00:10

andres