View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.programming
Rob Bovey Rob Bovey is offline
external usenet poster
 
Posts: 811
Default .OnAction points to wrong file.module.procedure

Hi Stewart,

Unfortunately, this is a known problem with the OnAction setting of
command bar controls. If two workbooks have the same procedure name, a
command bar control with its OnAction property assigned to that procedure
name will run the procedure in which ever workbook was opened last.
Qualifying the procedure name with the workbook name when setting the
OnAction property doesn't help. The only workaround is to make sure your
procedures are uniquely named.

--
Rob Bovey, Excel MVP
Application Professionals
http://www.appspro.com/

* Take your Excel development skills to the next level.
* Professional Excel Development
http://www.appspro.com/Books/Books.htm

"Datasort" wrote in message
...
I have a problem with a reference for the .OnAction of a command bar
button.

There are two excel workbooks open. One is an XLA that is the code for the
other workbook. In each workbook there is a module called reports and a
sub
called GenerateReports. The full index to the code is
Reports.GenerateReports

The workbooks are names.

Plan1.xls
PlanCode.xla


The OnAction is set to the code below:

. OnAction = PlanCode.xla!Reports.GenerateReports


The problem is that the code that is being run is.

Plan1.xls!Reports.GenerateReports not the .XLA file.

I can't seem to run the code in the xla version or Reports.GenerateReports

Other considerations:

The .xla file has the property isAddIn is set to true. Thus the workbook
in
not visible.

I would also prefer not to rename either Module.Procedure name

I am running Office10 (Excel XP)

Any thought/solutions would be appreciated

--
Stewart Rogers
DataSort Software, L.C.