我在VBA类中创建了一个包含对象集合的类。当我尝试通过自己创建的方法添加对象时,我得到了:
“ 438-对象不支持此属性或方法vba”
即使该方法存在于我的班上。
myCronCol是此处定义的CronCol类的实例:
Private Sub Class_Initialize()
Call InstanceProfiler.AddInstance(Me)
Set myCol = New Collection
End Sub
Private Sub Class_Terminate()
On Error GoTo Class_Terminate_Err
DoEvents
Call InstanceProfiler.RemoveInstance(Me)
Exit Sub
Class_Terminate_Err:
Call Log.add(e_ltError, "Class_Terminate", Err.Description)
Resume Next
End Sub
Public Sub addElement(ByRef cronElement As ClsCron)
myCol.add cronElement
End Sub
myCol在模块中声明为公共变量,并在初始化主对象时被初始化。
Dim myCol As Collection
...
Public Sub addElement(ByVal cronElement As ClsCron)
myCol.add cronElement
End Sub
Dim Cron as ClsCron
Set Cron = new ClsCron
'some constructors
Cron.Init("abba","banana")
以下是错误提示:
myCronCol.addElement (Cron)
我做错了什么? :-(