将数字设置到MultiLevel树中

时间:2017-01-04 07:04:25

标签: vba excel-vba tree binary-tree multi-level

我需要根据层次结构(col B:D)在F列中生成数字。以下是优秀的exmap,以及我应该得到的结果/值。 enter image description here

我只知道如何显示Level1的值。这是我的代码:

ws_c = ws1.Cells(ws1.Rows.Count, "D").End(xlUp).Row
Dim Lev1 As Long, Lev2 As Long, Lev3 As Long
Lev1 = 1
    For i = 3 To ws_c        
        If ws1.Range("B" & i).Value <> "" Then
           ws1.Range("F" & i).Value = Lev1
           Lev1 = Lev1 + 1
        End If
    Next

1 个答案:

答案 0 :(得分:1)

最后我做到了:

For i = 3 To ws_c
    '**************************************************************** L1
    If ws1.Range("B" & i).Value <> "" Then
       ws1.Range("F" & i).Value = Lev1
       Lev1 = Lev1 + 1
       Lev2 = 100
    End If
    '**************************************************************** L1.1
    If ws1.Range("C" & i).Value <> "" Then
        ws1.Range("F" & i).Value = Lev2 + Lev1 - 1
        Lev2 = Lev2 + 100            
        Lev3 = 10000
    End If
    '**************************************************************** L1.1.1
    If ws1.Range("D" & i).Value <> "" Then
        ws1.Range("F" & i).Value = Lev3 + Lev1 - 1 + Lev2 - 100
        Lev3 = Lev3 + 10000
    End If
Next