在Excel VBA中使用偏移量时出错

在Excel VBA中使用偏移量时出错,excel,vba,Excel,Vba,我正在VBA中使用偏移函数。但是,例如,当我在第一行时,offset(-5,0)返回一条错误消息。当然,当我在第一行时,我不能偏移-5行 我怎么检查 我尝试使用如果rangeEx=range(“A1”),但它不起作用。此示例使用选择 Sub RangeCheck() If ActiveCell.Row < 6 Then MsgBox ".OFFSET(-5,0) will fail" End If End Sub 子范围检查() 如果ActiveCell.Row小于6,则 Msg

我正在VBA中使用偏移函数。但是,例如,当我在第一行时,
offset(-5,0)
返回一条错误消息。当然,当我在第一行时,我不能偏移-5行

我怎么检查


我尝试使用
如果rangeEx=range(“A1”)
,但它不起作用。

此示例使用选择

Sub RangeCheck()
If ActiveCell.Row < 6 Then
    MsgBox ".OFFSET(-5,0) will fail"
End If
End Sub
子范围检查()
如果ActiveCell.Row小于6,则
MsgBox“.偏移量(-5,0)将失败”
如果结束
端接头

此示例使用选择

Sub RangeCheck()
If ActiveCell.Row < 6 Then
    MsgBox ".OFFSET(-5,0) will fail"
End If
End Sub
子范围检查()
如果ActiveCell.Row小于6,则
MsgBox“.偏移量(-5,0)将失败”
如果结束
端接头

您可以检查单元格的
.Row
属性,查看它是否小于或等于5

Sub Test()

    Dim RangeEx As Range
    Set RangeEx = ActiveCell

    If RangeEx.Row <= 5 Then
        MsgBox "Invalid!"
    Else
        MsgBox "Offset at " & RangeEx.Offset(-5, 0).Address
    End If

End Sub
子测试()
Dim RangeEx As Range
设置rangex=ActiveCell

如果rangex.Row您可以检查单元格的
.Row
属性,查看它是否小于或等于5

Sub Test()

    Dim RangeEx As Range
    Set RangeEx = ActiveCell

    If RangeEx.Row <= 5 Then
        MsgBox "Invalid!"
    Else
        MsgBox "Offset at " & RangeEx.Offset(-5, 0).Address
    End If

End Sub
子测试()
Dim RangeEx As Range
设置rangex=ActiveCell

如果是rangex.Row,你能提供更多的代码吗?我猜你可能有类似于
rangex.Offset
的东西,而不是你在问题中写的
Offset(-5,0)
。。。如果您提供更多信息,我们可以提供帮助…尝试
如果rangex.Column>5,然后是rangex.Offset(-5,0).Value=“test”
@SiddharthRout,misstype:)
如果rangex.Row>5,那么..
我使用rangex.Column进行检查,它可以工作。多谢各位^^你能提供更多的代码吗?我猜你可能有类似于
rangex.Offset
的东西,而不是你在问题中写的
Offset(-5,0)
。。。如果您提供更多信息,我们可以提供帮助…尝试
如果rangex.Column>5,然后是rangex.Offset(-5,0).Value=“test”
@SiddharthRout,misstype:)
如果rangex.Row>5,那么..
我使用rangex.Column进行检查,它可以工作。多谢各位^^感谢您的接受,欢迎来到Stack Overflow.:)感谢您的接受,欢迎来到Stack Overflow.:)