繁体   English   中英

VBA-将自定义对象添加到循环中的集合中

[英]VBA - Adding a custom object to a collection in a loop

我已经创建了一个节点对象:

Public value As Integer
Public marked As Boolean

Private Sub Class_Initialize()
     value = 0
     marked = False
End Sub

然后我尝试在for循环中向集合中添加一些节点对象

Dim inp As Integer
Dim counter As Integer
Dim n As node
Dim arr As Collection

Sub MySub()

    inp = InputBox("Insert a number: ")

    For counter = 2 To inp
        Set n = New node
        With n
            .value = counter
            .marked = False
        End With
        arr.Add n
    Next counter

End Sub

但是当我尝试运行它时,它只会说:

Object variable or With block variable not set (Error 91)

为什么会这样呢?

您在循环之前错过了一行:

Set arr = New Collection

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM