Es fácil llamar a una función dentro de un classModule usando CallByName ¿Qué hay de las funciones dentro del módulo estándar?Llamar a un Sub o Función contenida en un módulo usando "CallByName" en VB/VBA
''#inside class module
''#classModule name: clsExample
Function classFunc1()
MsgBox "I'm class module 1"
End Function
''#
''#inside standard module
''#Module name: module1
Function Func1()
MsgBox "I'm standard module 1"
End Function
''#
''# The main sub
Sub Main()
''# to call function inside class module
dim clsObj as New clsExample
Call CallByName(clsObj,"ClassFunc1")
''# here's the question... how to call a function inside a standard module
''# how to declare the object "stdObj" in reference to module1?
Call CallByName(stdObj,"Func1") ''# is this correct?
End Sub
No puedes. Busque 'Application.Run', que funciona con rutinas en módulos estándar. – jtolle
Como sus 'funciones' no son valores de reajuste, debería usar 'Sub' en lugar de' Function'. 'Call' nunca es necesario, simplemente puede escribir' CallByName clsObj, "ClassFunc1" '. Llamar a una función Func1 dentro de un módulo estándar es tan simple como 'Func1' - usar los modificadores apropiados en la declaración para cambiar el alcance si es necesario – barrowc