ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   VBA Integrated Development Environment basic question (https://www.excelbanter.com/excel-programming/305028-vba-integrated-development-environment-basic-question.html)

max

VBA Integrated Development Environment basic question
 
Hi

I'm reading "Excel 2000 power programming with vba" by Walkenbach, in
the 27th chapter he mentions that by adding a reference to Microsoft
Visual Basic for Applications Extensibility in a VBA Project a
programmer can have access to all the VB Editor's objects, properties
and methods.
Now I added a reference (tools,References in VBE) to the Microsoft
Visual basic for Applications Extensibility 5.3 for a new workbook and
then wrote this code :

Sub ListReferences()
Dim ref As Reference, msg As String
msg = ""
For Each ref In ActiveWorkbook.VBProject.References
msg = msg & ref.Name & vbCrLf
Next ref
MsgBox msg
End Sub

but when I try it I get an error (run time error 1004) as it can't
resolve ActiveWorkbook.VBProject.
Is the Microsoft Visual basic for Applications Extensibility 5.3 the
right reference to add?
I'm on Excel 2002.

Regards.

Massimo.
Bye

Tom Ogilvy

VBA Integrated Development Environment basic question
 
Max,
That is the correct library, but each workbook has its own reference list.
There is a possibility that when you added it, you added it to a different
workbook than the one where you have this code. The reference is added to
the active project, so select the workbook with this code in the Project
explorer, then do tools=References and see if you have the reference to the
extensibility library. If not, then add it there.

--
Regards,
Tom Ogilvy

"max" wrote in message
...
Hi

I'm reading "Excel 2000 power programming with vba" by Walkenbach, in
the 27th chapter he mentions that by adding a reference to Microsoft
Visual Basic for Applications Extensibility in a VBA Project a
programmer can have access to all the VB Editor's objects, properties
and methods.
Now I added a reference (tools,References in VBE) to the Microsoft
Visual basic for Applications Extensibility 5.3 for a new workbook and
then wrote this code :

Sub ListReferences()
Dim ref As Reference, msg As String
msg = ""
For Each ref In ActiveWorkbook.VBProject.References
msg = msg & ref.Name & vbCrLf
Next ref
MsgBox msg
End Sub

but when I try it I get an error (run time error 1004) as it can't
resolve ActiveWorkbook.VBProject.
Is the Microsoft Visual basic for Applications Extensibility 5.3 the
right reference to add?
I'm on Excel 2002.

Regards.

Massimo.
Bye




Chip Pearson

VBA Integrated Development Environment basic question
 
Your code should work fine. However, if access to the VBProject
is not trusted, the code will fail. In Excel, go to the Tools
menu, choose Macros, then Security, then the Trusted Publishers
tab. There, ensure that "Trust Access To Visual Basic Project" is
checked.


--
Cordially,
Chip Pearson
Microsoft MVP - Excel
Pearson Software Consulting, LLC
www.cpearson.com





"max" wrote in message
...
Hi

I'm reading "Excel 2000 power programming with vba" by

Walkenbach, in
the 27th chapter he mentions that by adding a reference to

Microsoft
Visual Basic for Applications Extensibility in a VBA Project a
programmer can have access to all the VB Editor's objects,

properties
and methods.
Now I added a reference (tools,References in VBE) to the

Microsoft
Visual basic for Applications Extensibility 5.3 for a new

workbook and
then wrote this code :

Sub ListReferences()
Dim ref As Reference, msg As String
msg = ""
For Each ref In ActiveWorkbook.VBProject.References
msg = msg & ref.Name & vbCrLf
Next ref
MsgBox msg
End Sub

but when I try it I get an error (run time error 1004) as it

can't
resolve ActiveWorkbook.VBProject.
Is the Microsoft Visual basic for Applications Extensibility

5.3 the
right reference to add?
I'm on Excel 2002.

Regards.

Massimo.
Bye




max

VBA Integrated Development Environment basic question
 
On Mon, 26 Jul 2004 10:01:55 -0400, "Tom Ogilvy"
wrote:

Max,
That is the correct library, but each workbook has its own reference list.
There is a possibility that when you added it, you added it to a different
workbook than the one where you have this code. The reference is added to
the active project, so select the workbook with this code in the Project
explorer, then do tools=References and see if you have the reference to the
extensibility library. If not, then add it there.


Tom

first thanks for answering, I'm sure I added it to the right project
because it's the only open project and can also see it in its
references window (it was moved up within the loaded references) so
that should not be the problem.
But It doesn't work.

Massimo.
Bye

max

VBA Integrated Development Environment basic question
 
On Mon, 26 Jul 2004 09:06:40 -0500, "Chip Pearson"
wrote:

Your code should work fine. However, if access to the VBProject
is not trusted, the code will fail. In Excel, go to the Tools
menu, choose Macros, then Security, then the Trusted Publishers
tab. There, ensure that "Trust Access To Visual Basic Project" is
checked.


Chip

It worked nicely.

Thanks a lot and have a good day.

Massimo.

Bye


All times are GMT +1. The time now is 07:16 AM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com