Treeview excel

Résolu
moumouss81 Messages postés 16 Statut Membre -  
 Dom31 -
Salut,

Voilà je désire faire un treeview. Normalement les info sont récupérées par une macro et sont diffusées sur un Userform. Mon problème c'est qu'au lancement la fenêtre de débogage s'affiche et m'annonce que la déclaration Dim tw As MSComctlLib.TreeView n'est pas définie. Quelqu'un a la solution?
Voilà la macro:

Dim tw As MSComctlLib.TreeView
Dim Base, n

Private Sub UserForm_Initialize()
Base = [BDDOC]
n = [BDDOC].Rows.Count
Code = Cells(ActiveCell.Row, 1)
On Error Resume Next
Err = 0
prénoms = Application.VLookup(Code, [BDDOC], 12, False) & _
"-" & Format(Application.VLookup(Code, [BDDOC], 15, False), "dd/mm/yyyy")
If Err <> 0 Then prénoms = "xxxx"
Set tw = Me.MonArbre
'tw.Nodes.Add(noeud_père,twchild,création_noeud_courant,libellé_noeud)
tw.Nodes.Add(, , "NoeudMat" & Code, prénoms).Expanded = True ' Racine arbre
vpersonnes Code
End Sub

Sub vpersonnes(parent) ' procédure récursive
For i = 1 To n
If Base(i, 2) = parent Then
tw.Nodes.Add("NoeudMat" & parent, tvwChild, "NoeudMat" & _
Base(i, 1), Base(i, 13) & "-" & Base(i, 15) & " [" & Base(i, 16) & "]").Expanded = True
vpersonnes Base(i, 1)
End If
Next i
End Sub

Private Sub MonArbre_NodeClick(ByVal Node As MSComctlLib.Node)
If Left(Node.Key, 8) = "NoeudMat" Then
Me.Intitule = Application.VLookup(Val(Mid(Node.Key, 9)), [BDDOC], 15, False)
Me.Code = Application.VLookup(Val(Mid(Node.Key, 9)), [BDDOC], 13, False)
Me.dte = Format(Application.VLookup(Val(Mid(Node.Key, 9)), [BDDOC], 16, False), "dd/mm/yyyy")
End If
End Sub
Configuration: Windows XP
Internet Explorer 7.0

2 réponses

  1. Dom31
     
    Salut, essaye la manip suivante :

    TreeView > manque une référence de bibliothèque
    Microsoft Windows Common Controls 6.0

    Dans barre d’outils de l’éditeur VB > Outils / Références
    Boite dialogue ‘Références- Project’ > cliquez sur ‘Parcourir’

    Boite d’invite ‘Ajouter une référence’ :
    Type de fichier > sélectionner Contrôles ActiveX (*.ocx)
    Sélectionner le fichier nommé MSCOMCTL.OCX
    Cliquez sur ‘Ouvrir’ pour établir le lien
    Pour terminer : cliquez sur ‘OK’ de la boîte ‘Références – Project’

    Cordialement. Dom31
    2
  2. fifayer Messages postés 74 Statut Membre
     
    Je pense qu'il faut déclarrer la DLL portant le treeview
    0