我这里没有具体的代码示例,但下面的DIM语句导致两个数组有什么不同:
Sub Diff1D2D()
Dim arr1D(500)
Dim arr2D(500, 1)
Dim i As Integer
For i = 1 To 500
arr1D(i) = i
arr2D(i, 1) = i
Debug.Print arr1D(i), arr2D(i, 1)
Next I
end sub
琐碎的结果是:
1 1
......
497 497
498 498
499 499
<500> 500 500除了明显的答案,arr1D只有1个维度(无论是列还是行,没人知道),arr2D有2个维度(500行,只有1列),还有哪些更深奥的概念?
在innerwebs上的许多示例代码片段仅限于将1D数组作为参数。因此,如果我从工作表中读取1列数据范围(自动创建(n X 1)的2D数组,那么如果我仅限于使用1D数组调用另一个函数或子函数,我必须转换2D数组到1D但它包含完全相同的数据。