Macro get executed twice

  • Thread starter Thread starter Anand Nichkaode
  • Start date Start date
A

Anand Nichkaode

Hi,

I have an add-in which I load in Excel by passing the add-in to Excel
command line.

The add-in opens a workbook does some work and then invokes a macro present
in the workbook as belows

Application.Run ("'" & RptObj.Name & "'!" & strMacroName)

I have observed that the Macro is invoked twice if the strMacroName has
macro name like Main() i.e. with parantheses.

But if strMacroName does not contain "()" parantheses then macro is invoked
once only.

Any idea what is happening or what I did wrong.

Thanks for any help in advance.
 
Macro names never have () in them. Those parens are used to hold the parms that
could be passed to the routine.

Don't include them in your strMacroName.
 
Thanks for the information.

If strMacroName does not have the "()" then it is invoked only once. But we
have a requirement where one can pass parameters to the macro in which case
the Macro gets executed twice.

Any information is appreciated.
 
If you want to pass parms, change:
Application.Run "'" & RptObj.Name & "'!" & strMacroName
to:
Application.Run "'" & RptObj.Name & "'!" & strMacroName, "parm1", "Parm2"
or if they're variables:
Application.Run "'" & RptObj.Name & "'!" & strMacroName, varParm1, varParm2

But strMacroName still doesn't have ()'s in it.
 

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

Back
Top