Same sub in two modules, wrong one gets called?

M

Maury Markowitz

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
 
R

RB Smissaert

Try this:

Application.CommandBars(barName).Reset

Then run your AddButton code again.


RBS
 
M

Maury Markowitz

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
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top