2012-06-25 53 views
0

我不擅长Excel/VBA,需要一些帮助。下面的代码(以其最简单的形式)抛出一个运行时错误(13),说明我有一个类型不匹配。我不明白它是如何不匹配的,因为我已经将它们声明为相同类型。有任何想法吗?如何将ListObject作为变量传递?

Sub Setup_ListObject() 
    Dim the_list As ListObject 
    Do_stuff_with_ListObject (the_list) ' ** runtime error highlights "type mismatch" 
End Sub 
Private Sub Do_stuff_with_ListObject(ByRef a_list As ListObject) 
    ' here we do stuff 
End Sub 

回答

3

删除括号。使用此

Do_stuff_with_ListObject the_list 

,或者如果你想使用括号,然后做这个

Call Do_stuff_with_ListObject(the_list) 
+0

哗 - 该做的伎俩。在VBA IDE中,当您在进程名称后面键入左括号时,它会显示一个工具提示,其中包含完整的括号和要传递的变量......这有点误导。谢谢 – thornomad

相关问题