范围 – 更改参考

我有这个代码:

Public Sub test() Dim Tgt As Range Set Tgt = Range("A1") End Sub 

我想改变当前是“A1”的Tgt的引用,我想只改变列而不是行,但是我不想再次设置Range(“XX”)。

有没有其他办法可以改变Tgt栏?

如果我做Tgt.Column = 3,这是不可能的。

正如你发现的那样, Tgt.Column = 3将不起作用。 这是因为Range对象的Column属性是只读的,所以你不能设置它的值,你只能读/得到它。

看看Range.Offset(RowOffset, ColumnOffset)

在你的情况下,它会是这样的:

 Set Tgt = Range("A1").Offset(0, 2) 

为了抵消你的范围称为Tgt0行向下2列向右,即在同一行,从列A到列C ,导致单元格C1

请注意, Range.Offset正向参数分别Range.Offset偏移(对于行)和Range.Offset偏移(对于列)。 否定的参数将在相反的方向上偏移。

 Tgt.Offset(0,2) 

这将把Tgt列移到C / 3