19 novembre 2006

Comment transférer d'une liste à l'autre ?

Je profite qu'il n'y ait pas d'actualité aujourd'hui pour proposer un bout de code Windev.
Ca pourrait être un snippet (ou brique de code WinDev) intéressant à mon avis : comment transférer les éléments séléctionnés d'une liste 1 dans une liste 2 (simplement en paramétrant les noms des listes LISTE_1 et LISTE_2).

Dans le principe, c'est simple : copier tous les éléments sélectionnés de la première liste dans la seconde, puis supprimer (ou pas selon le besoin) ces mêmes éléments dans la première liste, donc je propose un algo en 2 passes afin de pouvoir retirer la seconde passe si on veut garder les éléments de la première liste :

// Déclaration des variables
NumeroRang est un entier
i est un entier
nNbSelect est un entier = ListeSelectOccurrence(LISTE_1)

// Parcours des éléments sélectionnés de la liste 1
POUR NumeroRang = 1 A nNbSelect
// Sélection de l'élément de la liste 1
i = ListeSelect(LISTE_1,NumeroRang)

// Ajout dans la liste 2
ListeAjoute(LISTE_2,LISTE_1[i])

FIN

// Parcours des éléments sélectionnés de la liste 1
POUR NumeroRang = 1 A nNbSelect
// Sélection de l'élément de la liste 1
i = ListeSelect(LISTE_1,NumeroRang)

// Suppression de la liste 1
ListeSupprime(LISTE_1,i)

FIN

Aucun commentaire:

Le ruban on s'y fait et même plutôt vite !

Le ruban, j'étais sceptique (mauvais souvenir de l'apparition du ruban sous Office sûrement), mais après quelques hésitations, surto...