Excel VBA -添加一维数组到多维数组没有循环



我有一个关于从单个数组中"创建矩阵"而不必循环的问题:

从一个函数我得到一个数组的数据(Return_Calc,行= n-1)。我在找类似

的东西
    Output(n-1, j-1) = Return_Calc(Nav_Range)

此刻,我正在做这个:

    Temp = Return_Calc(Nav_range)
    For i = 1 To n - 1
        Output(i - 1, j - 1) = Temp(i - 1)
    Next i 

当前选项有效。我只是想知道有没有另一种不循环的可能性。谢谢你的帮助!

我不确定你是否会对这个建议满意。它提供了创建数组的数组的可能性,在某些情况下,将工作类似于多维数组。你可以考虑用这种方法解决问题。

下面是一个示例代码如何创建和如何从final数组中检索数据。

Sub Array_Workaround()
    Dim oneDimArrA, oneDimArrB
        oneDimArrA = Array(1, 2, 3, 4)
        oneDimArrB = Array("A", "B", "C", "D")
    Dim multiDimArr
    'creating multidemmnsional array
    multiDimArr = Array(oneDimArrA, oneDimArrB)
    'get element- different to standard syntax
    Debug.Print multiDimArr(0)(0)   '--> 1
    Debug.Print multiDimArr(0)(1)   '--> 2
    Debug.Print multiDimArr(1)(1)   '--> B
End Sub

给出的解决方案有一个重要的好处——每个内部数组可以有不同的维度。

相关内容

  • 没有找到相关文章

最新更新