2015-11-01 48 views
1

我有两个不同的片材,我必须分配来自这两个片2,3的范围,以两个不同的阵列,但问题是范围之前,我不能指定的片材用于例如VBA分配的范围内,以从不同的片阵列

Dim flArr() as variant 
flArr = Sheets("xxx").range(A1:A10) 

这给了我一个错误。任何解决方法?

谢谢

回答

2

看看你的代码和我的代码之间的区别。删除变量变量后面的括号,让excel找出它是一个数组。此外,您还需要将范围包含在引号中,并指定您希望范围内的值。

Dim flArr As Variant 
flArr = Sheets("xxx").Range("A1:A10").Value 

希望这有助于:)

你也可以做一些不常见的建设为这一点,但它仅仅是尴尬。

Dim arr() As Variant 
ReDim arr(1 To 10) 
arr() = Sheets("xxx").Range("A1:A10").Value 

希望这有助于

+0

thanks..but就是用括号,没有区别。 – Shan

+0

区别在于,如果您想要写入数据,Excel会创建一个用于存储和数组的变量,您将需要拥有正确数量的索引。没有括号的方式,您将根据需要扩展索引。 – 2015-11-01 20:42:43