通过字符串值调用 VBA 函数

通过字符串值调用 VBA 函数

在 VBA 中,有没有办法通过字符串值调用函数?

例如 -

Dim function_name, value1, value2 as String

value1 = "test"
value2 = "Function"
function_name = value1 & value2 ' So function name = 'testFunction'

call function_name ' But this calls a function called 'function_name', where as I require a funtion called 'testFunction'

答案1

尝试使用Application.Run来调用它。

应用程序.运行函数_名称

答案2

有一个值得一提的讨论https://stackoverflow.com/questions/2695198/calling-a-sub-or-function-contained-in-a-module-using-callbyname-in-vb-vba。当您调用类中的函数(而不是模块中的函数)时,使用 VBA 本身的 CallByName 可以让您有机会获取返回值并进行错误处理。请参阅链接的讨论。

相关内容