2016-06-02 1 views
1

Я надеюсь, что кто-то может мне помочь, потому что я застрял на нем в течение нескольких дней.Ребенок-узлы в дереве дерева excel имеют тот же уровень, что и родительский

У меня есть рабочий лист, который я хочу визуализировать в древовидной структуре. Поскольку это мой первый вопрос, и моя репутация недостаточно высока, изображения предоставляются по ссылке. img of Worksheet to visualise

'i:loop through objects 
'j:loop through object childs 
'counter: keep track of how many childs processed 

For i = 1 To 5 
Set parentCell = rng.Offset(counter, 0) 'parent values 
strParent = parentCell.Value 'parent values 

' Build the treeview for both the Left and the right side of the screen 
trvLeft.Nodes.Add Key:=strParent, Text:=strParent 
trvRight.Nodes.Add Key:=strParent, Text:=strParent 


For j = 1 To HelperMethods.AmountInEntity 'can be any number 
    strPresent = rng.Offset(counter, 6).Value '"x" or "" 

'Add to left treeview 
    Call trvLeft.Nodes.Add(Relative:=strParent, Relationship:=tvwChild, Key:=rng.Offset(counter, 4).Value, Text:=rng.Offset(counter, 4).Value) 

'add to right treeview. If not present, mark as red. 
    If strPresent = "x" The 
     Call trvRight.Nodes.Add(Relative:=strParent, Relationship:=tvwChild, Key:=rng.Offset(counter, 5).Value, Text:=rng.Offset(counter, 5).Value) 
    Else 
     With trvRight.Nodes.Add(strParent, tvwChild, rng.Offset(counter, 5).Value, rng.Offset(counter, 5).Value) 
       .ForeColor = vbRed 
     End With 
    End If 

    counter = counter + 1 

Next j 
Next i 

что-то пойдет не так в добавлении узла к его родителю, так как все узлы создаются на том же уровне.

Одна странная вещь, которую я заметил, заключается в том, что родители добавляются в нижнюю часть списка, а дети добавляются в верхнюю часть. img of flat tree

Спасибо заранее,

Филипп

ответ

0

я удалил treeviews, и сделал новые. Не спрашивайте меня, но теперь это работает. Чудеса Microsoft Excel ...

-edit-

ошибка снова произошла, так что это не было единичным случаем. Кто-нибудь знает, что может вызвать такое поведение?