Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 1
Default Enumerate all global variables?

Anyone know if there's a way to enumerate the global variables within
a workbook when opening it for automation?

I know that you can write a macro in a general module that exposes a
variable and then call that macro via:


Excel.Application.Run(MacroName)


But what if you have no control over the development of the Excel
workbook and cannot dictate that a macro be written to expose the
variable you're interested in? In fact in the case I'm dealing with I
don't even know the name of the variable. All I know is that the
workbook may have global variables of a COM component of a certain
type.


Is there some way to get a handle on all the global variables in a
workbook to enumerate through them so you can find the ones you're
interested in?
  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 7,247
Default Enumerate all global variables?

You can write VBA code that reads other VBA source code. This is outlined in
broad strokes at http://www.cpearson.com/Excel/vbe.aspx . So, technically,
yes, you can write code that enumerates the global variables in one or more
modules of another project, assuming that the VBProject isn't protected. But
knowing the variable name at run time (as opposed to compile time) won't do
you any good. There is no mechanism to get the variable's value via
automation from another project, even if that project is referenced by the
running project. CallByName is the closest you can get, conceptually, but
that doesn't work with variables.




--
Cordially,
Chip Pearson
Microsoft Most Valuable Professional
Excel Product Group
Pearson Software Consulting, LLC
www.cpearson.com
(email on web site)








wrote in message
...
Anyone know if there's a way to enumerate the global variables within
a workbook when opening it for automation?

I know that you can write a macro in a general module that exposes a
variable and then call that macro via:


Excel.Application.Run(MacroName)


But what if you have no control over the development of the Excel
workbook and cannot dictate that a macro be written to expose the
variable you're interested in? In fact in the case I'm dealing with I
don't even know the name of the variable. All I know is that the
workbook may have global variables of a COM component of a certain
type.


Is there some way to get a handle on all the global variables in a
workbook to enumerate through them so you can find the ones you're
interested in?


Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Global Variables Karen53 Excel Programming 12 April 16th 08 07:14 PM
global variables Nicolas Roth Excel Programming 3 September 25th 06 04:40 PM
Global variables Ed Excel Programming 4 August 7th 06 04:00 AM
Global Variables [email protected] Excel Programming 0 July 7th 06 10:53 AM
global variables Mike Archer Excel Programming 4 May 3rd 06 07:33 PM


All times are GMT +1. The time now is 11:55 PM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright ©2004-2024 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"