【发布时间】:2015-05-22 10:57:03
【问题描述】:
我有一个二维数组 - aArray(1,variable) 并想知道如何For Each 通过数组的第一排,即只读取 aArray(0 , variable)
这更多是出于自我教育的目的,如果可能的话,如何做到这一点。我可以用 for 循环来做到这一点:
Dim a As Integer: For a = 0 to ?
Range("A1").Value = aArray(0,a)
Next a
但对使用 For Each 循环很感兴趣。到目前为止,我已经得到了
Dim a As Variant: For Each S In aArray
Range("A1").Value = S
Next a
但它会遍历所有数组 (0,0) (1,0) (0,1) (1,1) 等...
【问题讨论】:
-
你不能。您必须将第一个排名输出到一个新数组中。为什么还要使用
For Each? -
除了了解它是否可能之外,没有真正的理由。在 excel 中使用大范围时,已经习惯使用 For Each 而不是循环,因为它更快。为答案喝彩。
-
For Each使用集合更快,但使用数组则不然。 -
见This 这支持@Rory 提到的内容。罗里,您可能想添加它作为答案?
标签: arrays excel multidimensional-array foreach vba