Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我可以在VBA中循环数组元素吗_Vba_Excel - Fatal编程技术网

我可以在VBA中循环数组元素吗

我可以在VBA中循环数组元素吗,vba,excel,Vba,Excel,我可以循环所有这些东西吗,这样就不会占用太多的空间并解决程序 我有大约600个这样的MYarray元素。给我提个建议。 我怎样才能循环所有这些东西 我尝试在该循环中使用for循环和if语句,但没有成功 Myarray(1) = Sheets("DealComparison").Cells(2, 1) Myarray(2) = Sheets("DealComparison").Cells(3, 1) Myarray(3) = Sheets("DealComparison")

我可以循环所有这些东西吗,这样就不会占用太多的空间并解决程序

我有大约600个这样的MYarray元素。给我提个建议。 我怎样才能循环所有这些东西

我尝试在该循环中使用for循环和if语句,但没有成功

    Myarray(1) = Sheets("DealComparison").Cells(2, 1)
    Myarray(2) = Sheets("DealComparison").Cells(3, 1)
    Myarray(3) = Sheets("DealComparison").Cells(4, 1)
    Myarray(4) = Sheets("DealComparison").Cells(5, 1)
    ..
    ..
    Myarray(600)=Sheets("DealComparison").Cells(601, 1)
这样循环将自动继续,直到没有值为止

请帮助我解决这个问题,因为我是vba新手

我不太确定,我认为我们需要一个for循环和一个If循环,其中包含in-for。不太确定。请帮我做这个
谢谢

您可以使用类似以下代码:

Sub dural()
    Dim I As Long
    Dim Myarray(1 To 4) As Variant

    For I = 1 To 4
        Myarray(I) = Sheets("DealComparison").Cells(I + 1, 1)
    Next I
End Sub
选择你自己的上限

编辑#1:

如果希望代码选择上限,则:

Sub dural()
    Dim I As Long, N As Long
    N = Sheets("DealComparison").Cells(Rows.Count, 1).End(xlUp).Row - 1
    Dim Myarray()
    ReDim Myarray(1 To N)

    For I = 1 To N
        Myarray(I) = Sheets("DealComparison").Cells(I + 1, 1)
    Next I
End Sub

你比我强多了。但是,我会使用
I=Ubound(Myarray)
您可以将范围放入一行代码中的二维数组中,而不是循环。