3
내 함수가 컬렉션을 가져오고 항목이 개체 또는 프리미티브 일 수 있습니다. 이 항목을 변형에 어떻게 할당 할 수 있습니까? 내가 무엇vba-variant : 클래스와 프리미티브 유형을 처리하는 방법
이제이 같은 같습니다
Dim vItem As Variant
On Error Resume Next
vItem = oCollection.Item(sKey)
If Err.Number = 91 Then
Set vItem = oCollection.Item(sKey)
On Error GoTo 0
나는 그것이 작동하는 생각을하지만, 그것을 할 수있는 더 좋은 방법이 있는지 궁금하다.
그럴 수도 있지만 해결책은'oCollection.Item (sKey)'를 사용해야합니다. 설명했다 [여기] (http://stackoverflow.com/questions/137845/determining-whether-an-object-is-a- 회원 --of-a-collection-in-vba) 마크 Nold에 의해 훨씬 빠릅니다 특히 내가 거대한 콜렉션을 가질 것이기 때문에) –
어때?'VarType (oCollection.Item (sKey)) = vbObject'? – SWa
예 - 물론 작동합니다 (저에게 쉬운 것 같았습니다 ..) –