【发布时间】:2012-09-10 16:07:51
【问题描述】:
我最初声明一个数组为空:
Dim ArrayVar() as Variant
'May add some data, may not
if something then
Redim Preserve ArrayVar(ubound(ArrayVar,1)+1)
ArrayVar(ubound(ArrayVar,1)) = "something"
end if
'Always check size of array
if ubound(ArrayVar,1) > x
问题是有时当我检查大小时,没有添加任何内容 - 数组为空并且我收到运行时错误。我确实尝试使用Dim ArrayVar(0) as Variant 声明数组,但随后 redim 语句无法编译。
最好的方法是什么?
【问题讨论】:
-
这将回答 yoru q stackoverflow.com/questions/206324/…
-
不,说“下标超出范围”
-
@АртёмЦарионов 在这方面没有区别。
标签: vba