VBA范围未分配给数组

时间:2016-01-22 15:39:23

标签: vba excel-vba excel

所以我只是简单地定义了一个测试函数:

Option Base 1
Function TestFunction(InputRange As Range)
    Dim TestArray() As Variant
    TestArray = InputRange

    Debug.Print TestArray(5)
End Function

然后我在带有= TestFunction(A:A)的工作表上调用它,并期望看到第5行中的值打印到立即窗口。相反,我没有得到任何输出。 A的前100行左右有数据,所以我希望TestArray(5)输出一些东西。

我也尝试将上述内容更改为:

    TestArray = InputRange.Value

    TestArray = Range(InputRange)

这些似乎都不起作用。

1 个答案:

答案 0 :(得分:3)

问题是当为数组分配范围时,无论它是一列还是一行,它都会被制成二维数组。所以所有引用都必须将其称为二维数组:

Debug.Print TestArray(5,1)
相关问题