下标越界
只能在定义的范畴内拜候数组元素和聚集成员。此错误有以下的原因息争决办法:
引用了不存在的数组元素。
下标比可能下标范畴大或小,或是在利用法式中那一边的数组没有指定范畴。查抄数组的声明以确认其上界和下界。若利用的是从头指定范畴的数组,应利用 UBound 和 LBound 函数来决定命组拜候。
假设索引指定为变量,应查抄变量名的拼写。
声明数组时没有指定元素的数目。例如,下列的代码就会招致此错误:
Dim MyArray() As Integer
MyArray(8) = 234 ' 招致错误 9。
Visual Basic 其实不会将没有指定范畴的数组主动设为 0 – 10。
相反必需利用 Dim 或 ReDim 来指定命组中元素的数目。
引用了不存在的聚集成员。
试着利用 For Each。。。Next 构造取代指定元素下标。
利用速写形式的下标,成果指定了错误的元素。
例如,当在聚集上利用 ! 运算子时,! 主动指定了一个键。
例如 object!keyname。value 和 object。item(keyname)。value 是一样的。在此例中,聚集中假设 keyname 表达一个错误键,错误就会产生。若要改进此错误,在聚集对象中利用准确的键名称或索引。
详尽信息,可拔取有问题的项目,并按下 F1 键。
好比你定义b[100],假设在法式中呈现了b[101],就越界了
0