【发布时间】:2019-06-04 06:43:04
【问题描述】:
为了在循环 Listobject 的数据范围的思想值时提高代码的速度,我想将列的值传递给数组并循环遍历数组,而不是循环遍历 Listobject 的值。
我得到了一个见解here 从那里我详细阐述了这段代码。
'passing the list object to a variable
Dim SCtbl As ListObject
Set SCtbl = ThisWorkbook.Worksheets("sc").ListObjects(1)
'dimensioning the array (as variant)
Dim ListofSC As Variant
ListofSC = SCtbl.ListColumns("long_shortcut").DataBodyRange.Value
MsgBox (LBound(ListofSC))
MsgBox (UBound(ListofSC))
MsgBox (ListofSC(1))
第一条消息给出结果 1 第二条消息给出结果 708(listobject 的行项)
但是当访问元素时,我的下标超出了元素 1 的范围。
实际上 ListofSC 是维数为 1 的普通数组吗? 如果是这样,为什么我不能访问这些值?
谢谢。
【问题讨论】:
标签: arrays excel range dimension listobject