Bonjour a tous,

M'etant inspiré de pas mal de chose, j'ai crée ce petit bout de code pour le creation d'un treeview. Le seul pb c'etqu'il me mets un invalid key sur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
Set NodX = Menu.Nodes.Add(C, tvwChild, A, B)
Voice le code en entier :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
54
55
56
57
58
59
60
61
62
 
    Dim NodX As Node
    Dim Menu As Control
    Dim Sql_Sel As String
    Dim Cl_Wh As String
    Dim Cl_By As String
    Dim Rq_Sql As String
    Dim Cnx As New ADODB.Connection
    Dim rst As ADODB.Recordset
 
    Set Cnx = CurrentProject.Connection
    Set rst = New ADODB.Recordset
 
    Set Menu = Me.TreeView
 
    Sql_Sel = "SELECT [Tel - Fact - Cpte Regroupement].Num_Cpte FROM  Tel - Fact - Cpte Regroupement]"
    Rq_Sql = Sql_Sel & " " & ";"
 
    rst.Open Rq_Sql, Cnx
    Set NodX = Menu.Nodes.Add(, , "menu", "Compte de Facturation")
         Do Until rst.EOF
            A = rst.Fields("Num_Cpte")
            B = rst.Fields("Num_Cpte")
            C = "menu"
            Set NodX = Menu.Nodes.Add(C, tvwChild, A, B)
            rst.MoveNext
         Loop
         rst.Close
         Cnx.Close
 
         Sql_Sel = "SELECT [" & Num_Cpte_P & "].Num_Cpte, [" & Num_Cpte_S & "].Num_Cpte_Secondaire FROM [" & Num_Cpte_P & "] INNER JOIN [" & Num_Cpte_S & "] ON [" & Num_Cpte_P & "].PK_Cpte_Regroupement = [" & Num_Cpte_S & "].FK_Cpte_Regroupement"
         Cl_By = "Order By [" & Num_Cpte_S & "].Num_Cpte_Secondaire"
         Rq_Sql = Sql_Sel & " " & Cl_By & ";"
 
         rst.Open Rq_Sql, Cnx
         Do Until rst.EOF
             A = rst.Fields("Num_Cpte") & rst.Fields("Num_Cpte_Secondaire")
             B = rst.Fields("Num_Cpte_Secondaire")
             C = rst.Fields("Num_Cpte")
             Set NodX = Menu.Nodes.Add(C, tvwChild, A, B)
             rst.MoveNext
          Loop
          rst.Close
          Cnx.Close
          Set Rsr = Nothing
 
          Sql_Sel = "SELECT [" & Num_Cpte_P & "].Num_Cpte, [" & Num_Cpte_S & "].Num_Cpte_Secondaire, [" & LigneS & "].Ligne_Secondaire FROM [" & Num_Cpte_P & "] INNER JOIN [" & Num_Cpte_S & "] ON [" & Num_Cpte_P & "].PK_Cpte_Regroupement = [" & Num_Cpte_S & "].FK_Cpte_Regroupement INNER JOIN [" & LigneP & "] ON [" & Num_Cpte_S & "].PK_Cpte_Secondaire = [" & LigneP & "].FK_Cpte_Secondaire INNER JOIN [" & LigneS & "] ON [" & LigneP & "].PK_Lignes_Principales = [LigneS].FK_Ligne_Principal"
          Cl_By = "Order By [" & LigneS & "].Ligne_Secondaire"
          Rq_Sql = Sql_Sel & " " & Cl_By & ";"
          rst.Open Rq_Sql, Cnx
          Do Until rst.EOF
             A = rst.Fields("Num_Cpte") & rst.Fields("Num_Cpte_Secondaire") & "(P_)" & rst.Fields("Ligne_Secondaire")
             B = rst.Fields("Ligne_Secondaire")
             C = rst.Fields("Num_Cpte") & rst.Fields("Num_Cpte_Secondaire")
             Set NodX = Menu.Nodes.Add(C, tvwChild, A, B)
             rst.MoveNext
          Loop
          rst.Close
          Cnx.Close
 
   Set rst = Nothing
   Set Cnx = Nothing
Merci d'avance pour votre aide

Anax