在此先感谢。使用VBA中的变量名称调用函数
我想使用变量名称调用函数。这是抛出错误
无法找到宏'testfunc'。 简历没有错误
我的代码:我试过低于3个语句但都抛出同样的错误。
sFuncName = "testfunc"
ExtractData = Application.Run("Sheet.xls" & sFuncName, s1, s2)
ExtractData = Application.Run(sFuncName, s1, s2)
ExtractData = CallByName("Sheet.xls", sFuncName, VbMethod, s1, s2)
注意,sFuncName
返回一个值&我有2所擅长的那一刻开了,我想将数据从一个Excel中复制到其他。
请帮我实现这一点。
Private Function ABC
sFuncName = oMapWksht.Cells(sMapRowItr, 3).Value
'sFuncName = "testfunc"
ExtractData = Application.Run("Sheet.xls" & sFuncName, s1, s2)
'ExtractData = Application.Run(sFuncName, s1, s2)
'ExtractData = CallByName("Sheet.xls", sFuncName, VbMethod, s1, s2)
End Function
Public Function testfunc(ByVal s1 As String, ByVal s2 As String) As Boolean
--
---
----
End Function
到底在哪'testfunc'位于:它是从不同的工作簿你发布的代码? –
我打开了2个工作簿。我拥有Book1中的所有代码并试图从Book2中复制数据。 “testfunc”是同一工作簿中的另一个功能。 – Venkat
在你的'VBAProject'中,确保你把你的函数(如'testfunc')放到一个模块中(在Project Explorer中的Modules下面),而不是作为工作表或工作簿中的VBA代码(在' Microsoft Excel对象“)。 – rskar