2013-07-23 40 views
3

我有一個節點的嵌套樹,要麼是Dictionaries要麼是Collections(我沒有控制這個結構 - 它是給我的)。我怎麼能從Collections分開Dictionary節點?如何識別對象是集合還是詞典?

我觀察到存在一個IsArray()功能,但沒有IsCollectionIsDict()

回答

5
Sub TestingType() 
    Dim col As New Collection 
    Dim dic As New Scripting.Dictionary 

    Debug.Print TypeName(col) 'Collection 
    Debug.Print TypeName(dic) 'Dictionary 

End Sub 
+0

優秀 - 不知道'TypeName' – mchen

+0

@AndyG +1好的答案 – Santosh

3

嘗試是這樣的:

If TypeOf YourObjectVariable Is Dictionary Then 
    ' ... 
ElseIf TypeOf YourObjectVariable Is Collection Then 
    ' ... 
Else 
    ' Handle empty/other types here. 
End If 

你可以使用這樣的事情來控制執行流的代碼,或者創建您自己的IsCollection()和IsDictionary()函數。

+0

這同樣出色 - 每天學習新東西 – mchen

相關問題