【发布时间】:2015-08-18 16:20:27
【问题描述】:
您好,我正在使用 excel 2013 vba,我想将工作表对象传递给类函数:
'类模块 Class1'
Sub receive(ByRef ws As Worksheet)
msgbox ws.name
End Sub
调用类方法接收:
Sub passToClass()
Dim ws as Worksheet
Set ws = ThisWorkbook.Worksheets("sheet1")
Dim myClass As New Class1
myClass.receive(ws) ' Run-time Error '438': Object doesn't support this property or method
End Sub
一个有效的简单测试是同一模块中的两个子例程:
Sub pass()
Dim ws as Worksheet
Set ws = ThisWorkbook.Worksheets("sheet1")
call receive(ws)
End Sub
Sub Receive(ByRef ws As Worksheet)
msgbox ws.name
End Sub
我在概念上缺少什么?
提前致谢!
【问题讨论】:
标签: class excel pass-by-reference vba