2013-08-07 2 views
2

VBA 코드에 사용자 정의 개체가 있고 개체 유형이 무엇인지 확인하는 방법이 있는지 궁금해하고있었습니다.사용자 정의 형식에 대한 VarType

Dim myObject as Variant 
Set myObject= New Employee 

    If(myObject isType Employee) 
      Do Something 
     Else 
      Do something else 

난은 VarType() 함수를 생각하지만, 분명히 사용자 정의 유형에 대해 작동하지 않습니다 같은 일부 것. 내가 사용할 수있는 다른 것이 있습니까?

+0

'사용자 정의 개체'는 '클래스'를 의미합니까? –

+0

예, 수업을 의미합니다. – user2539552

답변

2

두 가지 가능성이 있습니다. 다음 코드는 모든 것을 설명해야합니다. 내부의 추가 의견을 참조하십시오

Sub qTest() 

    Dim myObject As Variant 
    Set myObject = New Employee 

    'return results to Immediate 
    Debug.Print TypeName(myObject) '>> will return class name 
    Debug.Print TypeOf myObject Is Employee '>>will return true 

    'using with 'if statements', both will return true 
    If TypeName(myObject) = "Employee" Then 
     MsgBox "OK" 
    End If 

    If TypeOf myObject Is Employee Then 
     MsgBox "OK" 
    End If 

End Sub 
1

난 당신이 TypeOf을 찾고 생각합니다. 위의 예를 사용하면 다음과 같이 사용할 수 있습니다.

Dim myObject as Variant 
Set myObject= New Employee 

If TypeOf myObject is Employee Then 
    Do Something 
Else 
    Do SomethingElse 
End If 
관련 문제