7,763
社区成员
发帖
与我相关
我的任务
分享
Sub Macro1()
If (Not TestObjAvail(Selection.Range, "ShapeRange")) Then
Debug.Print "not avail"
Exit Sub
Else
Debug.Print Selection.Range.ShapeRange.Count
End If
End Sub
'---------------------------------------------------------------------------------------
' 过程名 : TestObjAvail
' 时间 : 2013/2/27
' 作者 : 杨过.网狐.cn(csdn bcrun)
' 功能 : 测试对象变量是否可用,如可用则下一步可访问他的对象成员
' 说明 :
' 备注 : 星辰设计室VB一群:283362041,星辰学园BASIC辅导群:289219875
'---------------------------------------------------------------------------------------
Function TestObjAvail(obj1 As Object, vProp As String) As Boolean
Dim o1 As Object
TestObjAvail = False
On Error GoTo TestObjAvail_Error
Set o1 = CallByName(obj1, vProp, VbGet)
If Not (o1 Is Nothing) Then
TestObjAvail = True
End If
On Error GoTo 0
Exit Function
TestObjAvail_Error:
'MsgBox "Error " & Err.Number & " (" & Err.Description & ") in procedure TestObjAvail of Module mdlMain"
End Function
Public Function InDebugMode() As Boolean
Debug.Assert SetTrue(InDebugMode)
End Function
Public Function SetTrue(byref val) As Boolean
val = True
SetTrue = True
End Sub