我有一个for循环,每个循环产生一个范围,格式如下:
MsgBox currentRange.Address
输出$A$4:A$1000
$D$4:D$1000
$Z$4:Z$1000
每个循环一个值。
如何使用vba代码将所有这些范围组合成一个更大的范围以读取到数组中?
我试着用
bigRange = Application.Union(bigRange, currentRange)
试试这个:
Set bigRange = Application.Union(bigRange, currentRange)
你忘记了Set
。它需要,因为Range是对象。使用bigRange.Address
获取地址
一定要初始化bigRange
If bigRange Is Nothing Then
Set bigRange = currentRange
End If