使用“范围”的“单元格”
我一直在寻找这一点,而且我还没有成功。
我想在VBA中使用与单元格命令范围,最后一行是可变的。 而且,我没有获得连续的专栏。
我必须select范围S2:S9
和U2:U9
( U2:U9
,最后一行可以是variables)。 我知道这个命令的作品:
Range(Cells(2, 19), Cells(NumberofRows, 19)).select
但是我需要select2个不连续的列。 我正在尝试这样的事情,但没有成功:
Range(Cells(2, 19), Cells(NumLinhas, 19);(Cells(2, 21), Cells(NumLinhas, 21)).Select
有谁知道如何做到这一点?
另一种select是在VBA中使用Union()
方法 。
Union(Range(Cells(2, 19), Cells(NumLinhas, 19)), _ Range(Cells(2, 21), Cells(NumLinhas, 21))).Select
如果你想添加更多的范围,你可以继续添加如下所示的范围。 当您将循环添加到联合的范围时,这是特别有用的。
Dim rngUnion As Range Set rngUnion = Union(Range("D1:D2"), Range("H1:H2")) Set rngUnion = Union(rngUnion, Range("B1:B2")) Set rngUnion = Union(rngUnion, Range("F1:F2")) rngUnion.Select
你可以使用这个:
Range("S2:S" & intLastRow & ",U2:U" & intLastRow).Select
如果你想坚持你的逻辑使用Range
和Cells
试试这个:
Range(Range(Cells(2, 19), Cells(NumLinhas, 19)).Address & "," & _ Range(Cells(2, 21), Cells(NumLinhas, 21)).Address).Select
有点长,但你会使你的逻辑工作。
您也可以检查以下链接:
- 使用单元格
- dynamic范围
- 避免select