因此,我基本上在 excel 中有一个包含日历数据的行列表,所有这些数据都与创建它们的每个用户有关。我正在为每个用户制作一个对象集合。将个人添加到第一个集合后,我在用户对象内有另一个名为“事件”的集合。这是存储事件类型和日期的地方。我在将数组添加到集合“事件”时遇到问题。
“用户”对象如下所示:
用户
-姓名
-事件 [event1, event2, event3, ..., 等]
我收到“对象变量或未设置变量”的错误以下是在给出此错误的需要的 if 和 else if 语句末尾从下面的代码中获取的行:
temp.Events.Add arr1
emp2.Events.Add arr2
代码:
Do Until IsEmpty(Cells(i, 5))
Dim name As String
'grab name in cell
name = Cells(i, 5)
'if first list item, add new user
If list.Count = 0 Then
Dim emp1 As New User
emp1.name = name
list.Add emp1
Else
'traverse through list and search for same name
For j = 1 To list.Count
'if name is present, add event data to user object
If list.Item(j).name = name Then
Dim temp As New User
Set temp = list.Item(j)
Dim arr1(2) As String
arr1(1) = Cells(i, 3)
arr1(2) = Cells(i, 1)
temp.Events.Add arr1
'if name is not present, add new user and event data to new user object
ElseIf j = list.Count Then
Dim emp2 As New User
emp2.name = name
Dim arr2(2) As String
arr2(1) = Cells(i, 3)
arr2(2) = Cells(i, 1)
emp2.Events.Add arr2
list.Add emp2
End If
Next
End If
i = i + 1
Loop
如果有任何更简单的方法可以做到这一点,或者如果这不可能,请指出我正确的方向。任何帮助是极大的赞赏。谢谢。