【发布时间】:2018-09-18 16:34:49
【问题描述】:
我有一段简单的测试代码:
Sub test()
Dim testList As Object
Set testList = CreateObject("System.Collections.ArrayList")
testList.Add Range("a1")
Debug.Print testList.IndexOf(Range("a1"))
End Sub
返回错误而不是列表中对象的索引。为什么会这样,如果我没有添加Range,而是添加了自定义myClass,那么myClass Implement 必须如何才能使其正常工作?还是无法在ArrayList 中查找对象?
【问题讨论】:
-
两个指向同一个单元格的
Range存储在两个不同的对象中。因此,要么在字典/集合中映射地址/范围,要么将完整地址添加到列表中:testList.Add Range("a1").Address(True, True, , true)。
标签: vba excel arraylist data-structures