ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Can I use a variable contain the name of a sub or function to call it? (https://www.excelbanter.com/excel-programming/445138-can-i-use-variable-contain-name-sub-function-call.html)

[email protected]

Can I use a variable contain the name of a sub or function to call it?
 
I would like to be able to decide at run time which of several subs to
call and, when writing the code, it may be impossible to even know the name
of the sub.

That is, I cannot use code like:
if i 5 then
call This()
else
call That()
endif

because I have no idea what the names of "This" or "That" may be.

I would like to do something equivalent to:
Sub MyCode(SubName as WhateverIsNeeded)
Call SubName
End Sub

Thanks for any help.

Don Guillett[_2_]

Can I use a variable contain the name of a sub or function tocall it?
 
A bit more clarification??


On Nov 23, 8:35*am, wrote:
I would like to be able to *decide at run time which of several subs to
call and, when writing the code, it may be impossible to even know the name
of the sub.

That is, I cannot use code like:
* * * * if i 5 then
* * * * * * * * call This()
* * * * else
* * * * * * * * call That()
* * * * endif

because I have no idea what the names of "This" or "That" may be.

I would like to do something equivalent to:
* * * * Sub MyCode(SubName as WhateverIsNeeded)
* * * * * * * * Call SubName
* * * * End Sub

Thanks for any help.



GS[_2_]

Can I use a variable contain the name of a sub or function to call it?
 
Look at the 'CallByName' function.

Is there some reason why you can't include the module at design time?

In either scenario you cite, you still need to know the name of the
procedure to call so why does it matter how you implement this? We need
more info to better help you...

--
Garry

Free usenet access at http://www.eternal-september.org
ClassicVB Users Regroup! comp.lang.basic.visual.misc



joeu2004[_2_]

Can I use a variable contain the name of a sub or function to call it?
 
wrote in message
...
I would like to be able to decide at run time
which of several subs to call and, when writing
the code, it may be impossible to even know the
name of the sub.


Take a look at the help page for Application.Run. Be sure the limitations
fit your needs.


isabelle

Can I use a variable contain the name of a sub or function tocall it?
 
hi,

Sub test()
Dim mc As String, nb As Integer
nb = Application.InputBox(prompt:="Choose a number between 1 and 10", Type:=1)
If nb 5 Then mc = "This" Else mc = "That"
Call MyCode(mc)
End Sub

Sub MyCode(SubName As String)
Application.Run (SubName)
End Sub

Sub This()
MsgBox "This"
End Sub

Sub That()
MsgBox "That"
End Sub


--
isabelle



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

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