Arrays 如何在几行上拆分恒定的二维数组初始化?

Arrays 如何在几行上拆分恒定的二维数组初始化?,arrays,vba,excel,Arrays,Vba,Excel,我需要创建一个2D数组,该数组不打算更新,只需读取。 在阅读中,我通过评估发现了这种可能性: Dim varData As Variant varData = [{1, 2, 3; 4, 5, 6; 7, 8, 9}] 在我的例子中,值的数量需要在几行上拆分赋值,例如 varData = [{value1, value2; _ ...; _ valueM, valueN}] 但是,当使用u分割此分配时,VBA在第一行投诉: 编译错误: 缺端支架

我需要创建一个2D数组,该数组不打算更新,只需读取。 在阅读中,我通过评估发现了这种可能性:

Dim varData As Variant
varData = [{1, 2, 3; 4, 5, 6; 7, 8, 9}]
在我的例子中,值的数量需要在几行上拆分赋值,例如

varData = [{value1, value2; _
            ...; _
            valueM, valueN}]
但是,当使用u分割此分配时,VBA在第一行投诉:

编译错误:
缺端支架

我试图找到解释,但所有的例子似乎只用一行。怎么了


注意:我试图填充数组,而不是工作表中的单元格。

我正在考虑这个问题

Dim A as Variant
A = Array(Array(1, 2), _
          Array(3, 4), _
          Array(5, 6))

您是否试图用您的值填充单元格网格
varData=[{1,2,3;4,5,6;7,8,9}]
将生成一个3行乘3列的网格。@IvenBach:没错,在我的例子中,我想要两列和大约20行。我想如果你想分割行,你必须在这个问题中使用第二个公式。@SJR:你的意思是逐个分配单元格(
MyArray(0,0)=1
)?我把它放在下面的答案中,因为我无法在评论中正确设置格式。好的,谢谢。这样就可以了,不过我认为更简单的事情是可能的。你能在你的回答中加上不能拆分“声明”版本的原因吗?我相信它会帮助像我这样不熟悉VBA特性的人。