Still celebrating National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17


why errors from Excel object

Posted on 2000-04-17
Medium Priority
Last Modified: 2010-05-02
The following command:

    Dim ef1 As New ExcelFile

gives me the error:

    User defined type not defined.

I added the excel library 8.0.  It worked on a different computer using the 9.0 library.  should I be adding more components or references? and what is the different between 8.0 and 9.0?
Question by:cocor
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 3
  • 2
  • +1
LVL 70

Expert Comment

by:Éric Moreau
ID: 2724158
This type doesn't exist in the 8.0 version!

Expert Comment

by:Glen Richmond
ID: 2724933
dim xl As Excel.Application
xl.Workbooks.Open "PathAndFileNameAsString"
this should offer up most properties and methods used.

Expert Comment

ID: 2726005
The way glenrichmond put it is the way to do it, but you have to declare it like this:
Dim xl as New Excel.Application

If you don't you'd have to set the xl variable later on, which is not what you'd want.

Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!


Expert Comment

by:Glen Richmond
ID: 2726585
Yeh sorry TheMek missed that out, well spotted.

Author Comment

ID: 2726808
So the proper way to declare an excel file that will work in both excel library 8.0 and 9.0 is this?:

dim xl As New Excel.Application
xl.Workbooks.Open "PathFileNameAsString"

if i don't put "new" will it open an existing excel file or it is declaring the variable xl as a new excel object?

where can i find a list of these methods you mention?
ie.  xl.Cells(R, C).Value =...
LVL 70

Accepted Solution

Éric Moreau earned 200 total points
ID: 2726902
If you don't put the "New", you need a syntax like this:
dim xl As Excel.Application
set xl = new Excel.Application
set xl=CreateObject("Excel.Application")

Try not to put the New on the declaration line.

"where can i find a list of these methods you mention? "
You may look the help file but an easy way I find command of Excel, Word, ... is to record macros!

Author Comment

ID: 2727614
Thankyou for all your help.  This is what I was looking for

Expert Comment

by:Glen Richmond
ID: 2728835
cocor just a quick question why did you choose his answer over mine?

Author Comment

ID: 2731541
I am sorry. I wasn't sure which one to choose.

I knew how to declare an excel object both ways.  I just didn't know exactly what was happening and what was the difference between both types of declarations.  I guess the answer I was looking for was an understanding of the commands and what was the difference of the 8.0 and 9.0

I hope there is no hard feelings.

Featured Post

What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

Question has a verified solution.

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

If you have ever used Microsoft Word then you know that it has a good spell checker and it may have occurred to you that the ability to check spelling might be a nice piece of functionality to add to certain applications of yours. Well the code that…
If you need to start windows update installation remotely or as a scheduled task you will find this very helpful.
As developers, we are not limited to the functions provided by the VBA language. In addition, we can call the functions that are part of the Windows operating system. These functions are part of the Windows API (Application Programming Interface). U…
This lesson covers basic error handling code in Microsoft Excel using VBA. This is the first lesson in a 3-part series that uses code to loop through an Excel spreadsheet in VBA and then fix errors, taking advantage of error handling code. This l…
Suggested Courses

704 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