반응형
개체가 설정되어 있는지 VBA 확인
내 사용자 지정 클래스의 인스턴스 인 전역 변수가 있습니다.
객체가 설정되었는지 또는 초기화해야하는지 어떻게 확인합니까?
If obj Is Nothing Then
' need to initialize obj: '
Set obj = ...
Else
' obj already set / initialized. '
End If
또는 다른 방법을 선호하는 경우 :
If Not obj Is Nothing Then
' obj already set / initialized. '
Else
' need to initialize obj: '
Set obj = ...
End If
이를 수행하는 (불) 안전한 방법-명시 적 옵션을 사용하지 않는 것이 괜찮다면 ...
Not TypeName(myObj) = "Empty"
이것은 또한 객체가 선언되지 않은 경우를 처리합니다. 이것은 일부 동작을 끄는 선언을 주석 처리하려는 경우에 유용합니다.
Dim myObj as Object
Not TypeName(myObj) = "Empty" '/ true, the object exists - TypeName is Object
'Dim myObj as Object
Not TypeName(myObj) = "Empty" '/ false, the object has not been declared
이것은 VBA가 선언되지 않은 변수를 Empty Variant 유형으로 자동 인스턴스화하기 때문에 작동합니다. 동작을 관리하기 위해 보조 부울이 필요하지 않습니다.
참고 URL : https://stackoverflow.com/questions/2631678/vba-check-if-object-is-set
반응형
'Development Tip' 카테고리의 다른 글
Objective C 클래스에서 Swift 함수 호출 (0) | 2020.11.01 |
---|---|
Java에서 &&보다 빠를 수 있습니까? (0) | 2020.11.01 |
IP 주소로 사용자 위치 가져 오기 (0) | 2020.11.01 |
이벤트 로그에서 앱 풀 재활용을 찾는 방법 (0) | 2020.11.01 |
Bash에서 날짜 시간 문자열을 epoch로 변환 (0) | 2020.11.01 |