Ron*_*o.K 3 excel vba excel-vba
如果
r = 1,和c = 1 下面的目标代码无效(它尝试返回列左侧的两列单元格A)
Cells(r, c).Offset(0, -2)
Run Code Online (Sandbox Code Playgroud)
如何在vba中检查目标单元格是否有效?
Range对象来测试它是否有效(首选多功能性)OFFSET为(0,2)(1)代码
Sub Test1()
Dim r As Long
Dim c As Long
r = 1
c = 1
Dim rng1 As Range
On Error Resume Next
Set rng1 = Cells(r, c).Offset(0, -2)
On Error GoTo 0
If Not rng1 Is Nothing Then
'proceed with your code - range exists
Else
MsgBox "Range Error", vbCritical
End If
End Sub
Run Code Online (Sandbox Code Playgroud)
(2)代码
Sub Test2()
Dim rng1 As Range
Dim r As Long
Dim c As Long
c = 3
r = 1
If c - 2 <= 0 Then
MsgBox "Error", vbCritical
Else
Set rng1 = Cells(r, c).Offset(0, -2)
End If
End Sub
Run Code Online (Sandbox Code Playgroud)