fonctionnement d'un treeview

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Re : RESOLU fonctionnement d'un treeview

bonjour Herdet😎

Merci pour cet exemple 😎que tu a joints qui me fait penser que je vais abandonné l'idée de treeview 🙁car je pensais pouvoir y intégrer ma généalogie très importante 5000 personnes où + et je pense que cela va vite devenir une "usine" a concevoir, je vais conservé le fichier au cas où pour une autre aventure et te laisser libre pour d'autres aventures sur le forum

peux tu me commenter le code de l'initialisation de l'userform1 s'il te plait
Merci pour tout

Pascal
 
Dernière édition:

Pièces jointes

Dernière édition:
Re : RESOLU fonctionnement d'un treeview

bonjour Herdet😎
peux tu me commenter le code de l'initialisation de l'userform1 s'il te plait
Pascal
Bonsoir Pascal,
Milles excuses, mais j'ai un peu déconnecté sur ce sujet depuis quelques jours.
Dans l'exemple, l'initialisation est assez simple :
voir Sub BASE_arborescence_remplissage(ByVal EnsBase As Boolean)

Code:
   ' le Treeview A_TRW1 est rempli à partir des données de la base
   Set a = Sht_BASE.Range("A2").CurrentRegion
   Set TVX = UF_Lecture.MultiPage1.PageArbo.A_TRW1
   With A_TRW1.Nodes
      .Clear
      Tmod = "R"
      Set nodX = .Add(, , Tmod, "Projet")
      ii = 0
      For nn = 2 To a.Rows.Count       ' boucle pour chaque ligne
         If a(nn, 1) <> Tmod Then
            ' création du noeud principal(parent) indice ii
            ii = ii + 1
            ' nom du noeud de niveau 1
            Tmod = a(nn, 1)
            ' créer le noeud parent Tmod et le déployer
            Set nodX = .Add("R", tvwChild, "C" & ii, Expanded = True)
            ' rendre le noeud visible ( utile si la liste est plus grande que le TreeView)
            nodX.EnsureVisible
            jj = 0
         End If
         If a(nn, 1) = Tmod Then
            ' création du noeud secondaire(enfant) indice jj
            jj = jj + 1                                        ' ii & jj = indice du noeud de niveau 2
            Tpro = a(nn, 3)                                    ' nom du noeud de niveau 2
            ' nota : le nom i&j est mis au format XXX&XXX pour éviter les doublons
            Set nodX = A_TRW1.Nodes.Add("C" & ii, tvwChild, "D" & _
                       Format(ii, "000") & Format(jj, "000"), Tpro)
         End If
      Next nn
   End With

Chaque point de l'arborescence est nommé Node (Noeud ), chaque Noeud doit avoir un nom UNIQUE et le nom du Noeud père pour la hiérarchie

1) créer le noeud le plus haut nommé Projet ==> Set nodX = .Add(, , Tmod, "Projet")
2) Boucler sur toutes les lignes du tableau :
2-1) créer les noeuds de niveau 1 indice ii ( colonne 1 du tableau) : Set nodX = .Add("R", tvwChild, "C" & ii, Tmod)
2.2) créer les noeuds secondaires indice jj lus sur la ligne de niveau 1, colonnes 2
2.3) si la cellule colonne 1 suivante est différente du noeud 1 précédent Tmod revenir en 2.1 sinon créer les noeuds secondaires

Ci-joint RD-TreeView-01.zip avec fichier corrigé, un exemple d'arbre et 2 fichiers de J. Boisgontier dont jb-treeview.xls qui donne une procédure récursive de généalogie dans l'onglet "TreeGénéalogie" mais sans aucune explication comme c'est le cas dans les classeurs disponibles sur son site.😕

Bon travail
Robert
 

Pièces jointes

Re : RESOLU fonctionnement d'un treeview

bonsoir le forum
merci Boisgontier pour tes classeurs que je vais essayer d'adapter demain a tête reposée
je clos le post car je ne veux pas empiété sur des sujet plus brûlant
Pascal
Bonsoir Pascal,
J. Boisgontier à été plus rapide pour te répondre.
J'ai regardé les 3 fichiers proposés dont celui que j'ai cité mais l'inconvénient est que le code VBA très efficace et très compact ne comporte aucune explication et donc est réservé à l'usage de programmeurs expérimentés.
C'est toi qui vois !

je clos le post car je ne veux pas empiéter sur des sujets plus brûlants (???)
Pourquoi ? Si tu as besoin d'aide tu as autant de priorité que les autres demandeurs !

A+
Robert
 
Re : RESOLU fonctionnement d'un treeview

bonjour herdet, boisgontier et le forum

herdet
je clos le post car je ne veux pas empiéter sur des sujets plus brûlants (???)
j'avais dit cela sans arrière pensée et par blagues, bien sûr que si le besoin se fait sentir je reviendrai 😀 et puis il y a de l'aide qui se justifie par la qualité des réponses😎
Merci pour ton zip c'est clairement commenté 😎

Pascal
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

C
Réponses
0
Affichages
827
C
G
Réponses
11
Affichages
5 K
Y
Réponses
3
Affichages
2 K
yichaam
Y
K
Réponses
19
Affichages
5 K
K
Retour