将一系列离散范围组合在VBA中一次读入数组?

时间:2015-07-23 10:57:24

标签: excel vba excel-vba

我有一个for循环,每个循环产生一个范围,格式如下:

MsgBox currentRange.Address

输出

$A$4:A$1000
$D$4:D$1000
$Z$4:Z$1000

每个循环一个值。

如何将所有这些范围组合到一个更大的范围内,以便使用vba代码读入数组。

我尝试使用像

这样的东西
bigRange = Application.Union(bigRange, currentRange)

在循环中,但这不起作用。

1 个答案:

答案 0 :(得分:2)

试试这个:

Set bigRange = Application.Union(bigRange, currentRange)

你忘了Set。它需要因为Range是对象。要获取地址,请使用bigRange.Address

还要确保初始化bigRange

If bigRange Is Nothing Then
   Set bigRange = currentRange
End If