如何在Excel公式中偏移活动单元格

问题描述 投票:0回答:1

enter image description here嗨,我想在下面的代码中使用activecell和offset函数声明'MyRange',但我一直收到错误消息。如您在代码中看到的,我希望MyRange等于activecell前面5列的单元格。任何帮助,将不胜感激!

ActiveWorkbook.Names.Add Name:="MyRange", RefersToR1C1:=ActiveCell.Offset(0, -5)
vba offset
1个回答
0
投票

Offset(0, -5)指的是左边五列的单元格。在活动单元格的列小于或等于5的情况下,Offset(0, -5)指的是不存在的列。

为了避免运行时错误,您可以像这样检查活动单元格的列是否大于5

If ActiveCell.Column > 5 Then
    ActiveWorkbook.Names.Add Name:="MyRange", RefersToR1C1:=ActiveCell.Offset(0, -5)
End If
© www.soinside.com 2019 - 2024. All rights reserved.