2012-07-17 37 views
2

我正在尋找做深度優先使用vba搜索算法,所以我已經定義了一個名爲「節點」,應該包含「parentNode」的對象。調用自定義屬性時出現錯誤

我曾試圖定義parentNode爲收集和使用以下

Public Property Let Parent(ByRef inputNode As Node) 
    Set parentNode = New Collection 
    hasParentNode = True 
    parentNode.Add inputNode 

End Property 

Public Property Get Parent() As Node 
    Parent = parentNode.Item(1) 
End Property 

但是,當我打電話node.Parent我得到了Object variable or With block variable not set

我知道,是由於線「父= parentNode。項目(1)「這應該是什麼樣的正確方法?我希望它返回由編號分配

感謝

+0

讓我看看parentNode在哪裏聲明?它沒有任何價值,這就是爲什麼你會得到這個錯誤。 – 2012-07-17 04:25:37

回答

3

的parnetNode由於節點是一個對象(我假設,我不知道是什麼類Node實際上是),你的代碼缺少Set關鍵字:

Public Property Get Parent() As Node 
    Set Parent = parentNode.Item(1) 
End Property 

獲取Object variable or With block variable not set通常有時表示缺少Set關鍵字。

+0

你是男人! – Raymond 2012-07-17 14:38:56

+0

@Raymond嘗試使用上面的'Set'關鍵字,看看是否有效。 – JimmyPena 2012-07-17 14:40:46

+0

@Raymond很高興聽到它的工作! – JimmyPena 2012-07-17 14:47:55

相關問題