将值从2D阵列传输到3D阵列以跟踪更改

时间:2014-08-24 20:18:44

标签: vba excel-vba multidimensional-array excel

我是一名新手编码器,所以这有望成为一个非常简单的问题。

我尝试从2D数组复制到3D数组中,以便按设定的时间间隔跟踪更改。

    For i = 2 To nx + 1
        For j = 2 To ny + 1                               

            If k = (interval * z) Then Worksheets("Extent").Cells(i, j, z) = Worksheets("Water").Cells(i, j) And z = (z + 1)

        Next j
    Next i

我希望这样做是将2D阵列复制到一个新的“层”中。在每次迭代的3D数组中,' k'匹配间隔。

目前我收到错误:"参数数量错误或属性分配无效(错误450)"

这里有什么问题?

提前致谢! 菲尔

1 个答案:

答案 0 :(得分:0)

工作表只有两个维度,因此 Cells()只能有两个参数。

修改#1

您可以使用多个工作表来解决此问题

VBA 中说我们有一个数组 Ary(10,10,2),这可能在两个工作表中,每个工作表包含一个10x10。