1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
| Public Sub loadTreeview()
Dim tv As MSComctlLib.TreeView
Dim strSQL As String
Dim db As DAO.Database
Set db = CurrentDb
Set tv = Forms("Formulaire1").tvwtcs.Object
' clear any nodes, if any
tv.Nodes.Clear
Dim rsZone As DAO.Recordset
Set rsZone = CurrentDb.OpenRecordset("SELECT * FROM tbl_Zone ORDER BY ID_Zone", dbOpenDynaset)
rsZone.MoveFirst
Dim rsTCS As DAO.Recordset
Set rsTCS = CurrentDb.OpenRecordset("SELECT * FROM tbl_TCS ORDER BY ID_Zone", dbOpenDynaset)
rsTCS.MoveFirst
Dim nodX As MSComctlLib.Node
While Not (rsZone.EOF)
Set nodX = tv.Nodes.Add(, , "A" & rsZone!ID_Zone, rsZone!Zone)
nodX.Bold = True
strSQL = "ID_Zone = " & rsZone!ID_Zone
MsgBox rsZone!ID_Zone
rsTCS.FindFirst strSQL
While Not (rsTCS.NoMatch)
Set nodX = tv.Nodes.Add("A" & rsZone!ID_Zone, tvwChild, "C" & rsTCS!ID_TCS, rsTCS!IP)
Select Case rsTCS!ID_Type
Case 1 'Header
nodX.Bold = True
Case 2
nodX.ForeColor = vbBlue
End Select
rsTCS.FindNext strSQL
' .. and loop back and add next child
Wend
rsZone.MoveNext
Wend
'End With
End Sub |
Partager