Function 将对象用作函数的变量
我正在尝试创建一个名为wait的函数,该函数将使用一个对象:Function 将对象用作函数的变量,function,vba,object,Function,Vba,Object,我正在尝试创建一个名为wait的函数,该函数将使用一个对象: Function wait(browser As Object) ' loop until the page finishes loading Do While browser.READYSTATE <> 4 Loop End Function 以及: 但我得到了“运行时错误'424';需要对象。 有什么想法吗?换一行 wait (appIE) 到
Function wait(browser As Object)
' loop until the page finishes loading
Do While browser.READYSTATE <> 4
Loop
End Function
以及:
但我得到了“运行时错误'424';需要对象。
有什么想法吗?换一行
wait (appIE)
到
解释:在VBA中,每当调用具有参数的函数时,如果没有使用返回值执行任何操作,则必须在不使用括号的情况下调用它。在这种情况下,由于代码没有返回任何内容,因此应将其定义为子
,而不是函数
。同样的情况也适用要Sub
例程,这些例程也需要参数,即,您必须在调用它时不带括号,参数之间用逗号分隔
进一步阅读(via):GetIE函数工作正常,在添加等待时抛出错误function@AdamVoga同意。我刚刚在Excel中测试了你的代码并找到了问题所在。请参阅我上面更新的答案。为什么括号会有区别?这与“复制”有关吗?@AdamVoga刚刚更新了答案并解释了问题,所以其他人都会A也从中受益。+1,更多关于这方面的信息,请阅读以下内容,
Dim appIE As Object
Set appIE = GetIE
sURL = "http://google.com"
wait (appIE)
wait (appIE)
wait appIE