我创建了以下代码。我想验证我的arry1是否等于“Gi0”。如果正确则复制到新的arry2,但随后出现以下错误:
下标超出范围
有人可以解释我有什么问题吗? 用:
arry2(k, 1) = arry1(i, 1)
Private Sub CommandButton1_Click()
Dim arry1() As Variant
ReDim arry2(1 To 20, 1 To 1)
arry1 = Sheets("Sheet1").Range("B2:B65").Value
k = 1
For i = 1 To UBound(ar1)
If Left(arry1(i, 1), 3) = "Gi0" Then
arry2(k, 1) = arry1(i, 1)
k = k + 1
Else
End If
Next i
End Sub
答案 0 :(得分:0)
你有Ubound(ar1),你的数组名为arry1。
此外,您不需要在IF中使用ELSE语句。
这是调暗或重新编目阵列的好方法吗?我不这么认为。
如果我想让arry2成为一个21乘2的数组,那么我说
dim arry2(20,1) as double.
如果你想根据变量调暗我说:
dim arry2() as double
redim arry2(x,y)