define a function alias in VBA, possible?
Would Run suit?
new_func = IIf(term, "foo1", "foo2")
''new_func arg1, arg2, arg3
res = Run(new_func, "a", "b", 1)
More information: http://msdn.microsoft.com/en-us/library/aa199108(office.10).aspx
If the 2 functions were implemented in 2 different class modules you could give them the same name & call them across an interface. That's about as close as you can get. (and its not very close)
'empty interface class, name: IFoo
Public Function TheFunc(i As Integer) As Long
'
End Function
'class clsFoo1
Implements IFoo
Private Function IFoo_TheFunc(i As Integer) As Long
MsgBox "I'm clsFoo1"
End Function
'class clsFoo2
Implements IFoo
Private Function IFoo_TheFunc(i As Integer) As Long
MsgBox "I'm clsFoo2"
End Function
'module code;
Dim myFoo As IFoo
If var = 1 Then
Set myFoo = New clsFoo1
Else
Set myFoo = New clsFoo2
End If
myFoo.TheFunc 12345