Load dữ liệu vào treeview control từ sheet excel (1 người xem)

  • Thread starter Thread starter kuldokk
  • Ngày gửi Ngày gửi
Liên hệ QC

Người dùng đang xem chủ đề này

kuldokk

Thành viên hoạt động
Tham gia
12/10/07
Bài viết
149
Được thích
165
Giới tính
Nam
Nghề nghiệp
CEO
Chào mọi người, em đang sử dụng một treeview control của JPK đã được nhắc đến trong bài viết này trên GPE: Tạo VBA Treeview [Lưu Trữ] - Giải Pháp Excel

Vấn đề gặp phải lúc load dữ liệu như sau: AP0004 không ở đúng chỗ như đã đánh dấu trong hình (đáng lẽ AP0004 phải ở dưới TP0002)

mcknM.png



Code dùng để load dữ liệu vào treeview được thay đổi từ code ví dụ từ file gốc như sau:

Mã:
For Each c In Sheet14.Range("A2:A" & Sheet14.Range("A" & Rows.Count).End(xlUp).Row)


    On Error Resume Next
    'Populate level 1
    Set cRoot = .AddRoot(sKey:=c.Value2, vCaption:=c.Value2)


    Set cExtraNode = cRoot.AddChild("ML_" & c.Value2, "Meilensteine")


    'Populate level 2
    Set cNode = cRoot.AddChild(c.Offset(, 1).Value2, c.Offset(, 1).Value2)


    'Populate level 3
    If cNode.Level = 2 Then Set cNode = cNode.ParentNode


    If Not IsEmpty(c.Offset(, 2).Value2) Then
        Set cNode = cNode.AddChild(c.Offset(, 2).Value2, c.Offset(, 2).Value2)
    End If


    'Populate level 4
    If Not IsEmpty(c.Offset(, 3).Value2) Then
        If cNode.Level = 2 Then
            Set cNode = cNode.AddChild(c.Offset(, 3).Value2, c.Offset(, 3).Value2)
            Set cNode = cNode.ParentNode
        ElseIf cNode.Level = 1 Then
            Set cNode = cNode.Child.AddChild(c.Offset(, 2).Value2, c.Offset(, 2).Value2)
            Set cNode = cNode.Child.AddChild(c.Offset(, 3).Value2, c.Offset(, 3).Value2)
            Set cNode = cNode.ParentNode
        End If
    End If
Next

Để chạy ví dụ trong bài viết: Sheet chứa dữ liệu tên là Structure_3, bấm nút trên sheet này và bấm nút Demo1 TreeView trên form.

Có ai đã có kinh nghiệm trong vấn đề này chưa ah? Em xin cảm ơn nhiều.
 

File đính kèm

Tạm thời thì trong file này code đã hoạt động, nhưng không phải là cách tốt nhất. Nếu ai gặp phải vấn đề này có thể tham khảo và phát triển tiếp.
 

File đính kèm

Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom