PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV (précédentes versions) → Sélectionner plusieurs lignes d'un champ Arbre par programmation
Sélectionner plusieurs lignes d'un champ Arbre par programmation
Débuté par Sauveur CONSALVI, 18 oct. 2025 12:03 - 2 réponses
Membre enregistré
400 messages
Posté le 18 octobre 2025 - 12:03
Bonjour,
Dans un champ Arbre, je voudrais sélectionner toutes les lignes qui correspondent à un critère
J'arrive à parcourir toutes les lignes de l'arbre, détecter celle qui correspond au critère, mais je n'arrive pas à les sélectionner !!!
POUR nWI1 = 1 _À_ nNombreLigne
SI Contient(ARBRE_Sauve[nWI1], "Taille") = Vrai ALORS
//// ARBRE_Sauve = nWI1
//// ArbreSelect(ARBRE_Sauve, nWI1, vrai)
////// ARBRE_Sauve.Select(nWI1)
//// Trace(nWI1)
//// ARBRE_Sauve.ExécuteTraitement(trtSélection)
//// TableSelectPlus(ARBRE_Sauve,nWI1,vrai)
////// ARBRE_Sauve..Valeur = ARBRE_Sauve[nWI1]
FIN
FIN

J'ai mit en commentaire tout les codes qui ont essayé de sélectionner la ligne !!!
Quelle est donc la bonne syntaxe pour sélectionner des lignes d'un Arbre ???? Merci de votre aide .......
Cordialement
SC

--
Cordialement
SC
Membre enregistré
968 messages
Posté le 18 octobre 2025 - 17:00
Bonjour,
ArbreSelect Permet de connaître l'élément sélectionné, il ne correspond pas à votre demande.

Pour sélectionner plusieurs lignes, il faut utiliser :

ArbreSelectPlus
https://doc.pcsoft.fr/fr-FR/?3018002

En indiquant le chemin complet des éléments à sélectionner, par exemple :

ArbreSelectPlus(Arbre1,"Racine" + TAB + "Feuille 2" + TAB + "Sous Feuille 2-3")
ArbreSelectPlus(Arbre1,"Racine" + TAB + "Feuille 2" + TAB + "Sous Feuille 2-4")


Prenez soin de vérifier que "Multi-Sélection" est coché dans l'onglet "Détail" de la description du champ Arbre.

Cdlt
Membre enregistré
400 messages
Posté le 18 octobre 2025 - 18:28
Bonjour à tous
Merci bien ....
Pour ceux que cela intéresse, voici le code
nWI1 est un entier
gbOK = ArbreSelectMoins(ARBRE_Sauve)

nNombreLigne = ARBRE_Sauve.Occurrence
SI nNombreLigne = 0 ALORS RETOUR

POUR nWI1 = 1 _À_ nNombreLigne
SI Contient(ARBRE_Sauve[nWI1], "Taille") = Vrai ALORS
gbOK = ArbreSelectPlus(ARBRE_Sauve,ARBRE_Sauve[nWI1])
SI gbOK = Faux ALORS
Erreur("Élément non retrouvé "+ARBRE_Sauve[nWI1])
FIN
FIN
FIN

Cordialement
SC

--
Cordialement
SC