我试图做一个动态数组,在循环中添加单位。 每次我试图REDIM并添加一个单位时间,我得到以下错误:为什么在尝试重新获取时会出现下标超出范围错误?
下标越界
我的代码:
dim arr()
strSql = "SELECT item from dupEmail"
Set rs = CurrentDb.OpenRecordset(strSql)
rs.MoveFirst
ReDim arr(0)
Do While Not rs.EOF
arr(UBound(arr, 1)) = rs.Fields(0)
ReDim Preserve arr(1, UBound(arr, 1) + 1)
rs.MoveNext
Loop
我想ReDim Preserve arr(0, UBound(arr, 0) + 1)
但没有工作。
错误发生在哪一行?为什么你要反正redim?循环前查找记录集中的条目数,并事先设置数组的长度。 –
为什么不直接使用记录集?你有没有试过Redim preserve arr(ubound(arr)+1) –
这个错误发生在redim行上。谢谢你的提示,但我必须这样做。请记住,这是我的代码的简化。 – MJH