ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Same sub in two modules, wrong one gets called? (https://www.excelbanter.com/excel-programming/424335-same-sub-two-modules-wrong-one-gets-called.html)

Maury Markowitz[_2_]

Same sub in two modules, wrong one gets called?
 
I have two modules, production and testing. I have a menu bar with
buttons on it, which is populated in code like this:

Sub AddButton(barName As String, buttonName As String, commandName As
String)
Set newbutton = Application.CommandBars(barName).Controls.Add
(Type:=msoControlButton)
With newbutton
.OnAction = commandName
.Caption = buttonName
.Style = msoButtonCaption
.Visible = True
End With
End Sub

I am adding buttons to the bar like this:

Call AddButton("STAT", "Imply parameters", "testing.xla!Solve")

In spite of the name being fully qualified with the correct module
name, this button continues to call the version of Solve in
"production.xla". It's very annoying.

Any advice?

Maury

RB Smissaert

Same sub in two modules, wrong one gets called?
 
Try this:

Application.CommandBars(barName).Reset

Then run your AddButton code again.


RBS


"Maury Markowitz" wrote in message
...
I have two modules, production and testing. I have a menu bar with
buttons on it, which is populated in code like this:

Sub AddButton(barName As String, buttonName As String, commandName As
String)
Set newbutton = Application.CommandBars(barName).Controls.Add
(Type:=msoControlButton)
With newbutton
.OnAction = commandName
.Caption = buttonName
.Style = msoButtonCaption
.Visible = True
End With
End Sub

I am adding buttons to the bar like this:

Call AddButton("STAT", "Imply parameters", "testing.xla!Solve")

In spite of the name being fully qualified with the correct module
name, this button continues to call the version of Solve in
"production.xla". It's very annoying.

Any advice?

Maury



Maury Markowitz[_2_]

Same sub in two modules, wrong one gets called?
 
On Feb 19, 7:09*am, "RB Smissaert"
wrote:
Try this:

* Application.CommandBars(barName).Reset


Method "Reset" of object "CommandBar" failed.

What does the help mean when it says "Resets a built-in command bar to
its default configuration". What is the "default configuration"?

Maury


All times are GMT +1. The time now is 08:05 AM.

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