Tri d'une list box

Signaler
Messages postés
25
Date d'inscription
lundi 24 décembre 2018
Statut
Membre
Dernière intervention
18 février 2019
-
Messages postés
15933
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
14 mai 2021
-
comment faire un tri décroissant
dans une List box sans devoir ajouter des 1 ou 2 (0) devant chaque chiffre

10 réponses

Messages postés
2427
Date d'inscription
samedi 11 janvier 2014
Statut
Contributeur
Dernière intervention
6 mai 2021
137
Bonjour !
Tu as oublié ce mot dans ton message : penses-y pour les prochaines fois
Pour ton souci je t'explique
La Listbox n'affiche que des chaines de caractères même si c'est un nombre qui est affiché dans la Listbox
Dans ce cas au lieu d'afficher la Listbox et de la trier il est préférable de trier d'abord les valeurs elles-mêmes ( des Integer ou des Double ou autres) et ensuite afficher ces valeurs triées dans la Listbox .
Dis toi bien que les contrôles (Label, Textbox, Listbox) servent à afficher des valeurs et non de zone de stockage pour ces valeurs .
Un exemple tout simple :
Dim Valeur as Integer = 8
TextBox1.Text = Valeur.ToString

Dans le code précédent je dimensionne Valeur comme un Integer et je lui donne la valeur 8
ensuite je l'affiche dans la TextBox1
Imagines que j'ai besoin de ce 8 ensuite : j'ai directement Valeur qui me le donne au lieu de faire
Cint(Textbox1.Text)
qui me convertit en Integer le texte en String de la Textbox

Messages postés
15933
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
14 mai 2021
545
Bonjour vb, tu lui as donné le code en vb.net. Ca ne marchera pas en vb6.
Messages postés
2427
Date d'inscription
samedi 11 janvier 2014
Statut
Contributeur
Dernière intervention
6 mai 2021
137 >
Messages postés
15933
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
14 mai 2021

Bonjour Whis !
Oh la boulette !
' code en VB6
Dim Valeur as Integer = 8
TextBox1.Text = Cstr(Valeur)
Messages postés
25
Date d'inscription
lundi 24 décembre 2018
Statut
Membre
Dernière intervention
18 février 2019

bonjour
je vais essayerde trier mes valeurs mais alors il me faut les mettre dans un tableau pour les triees
merci
Messages postés
25
Date d'inscription
lundi 24 décembre 2018
Statut
Membre
Dernière intervention
18 février 2019

bonjour vb95 et autre
moi ce que je voudrai c'est extraire la valeur maxi d'une List box pour la mettre dans un text box en sachant que la valeur maxi peut évoluer a tout moment vu que je rentre des valeurs différentes a chaque fois que je rajoutes des capsules de champagne dans mon programme je veux donc que mon text box évolue en permanence si je venais a rajouter une capsule d'une valeurs plus élevée que celle qui y figure
sachant que j ai 5000 capsules et que ma collection évolue toujours
c est pour cela que je voulais faire un trie de ma List box pour après ressortir la valeur la plus grande
en attente de réponses merci
Messages postés
15933
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
14 mai 2021
545
Je vais poser une quesrion bête, vu ta question je suppose que tu débutes.
Pourquoi avoir choisi vb6?
  • microsoft ne le vend plus depuis 1999 (20 ans....), d’ailleurs se le propocurer aujourd’hui est souvent illégal.
  • les mises à de sécurité ont été faites pour les clients grand compte jusqu’en 2008 (11 ans)
  • le foncrionnemet des logiciels n’est plus garanti depuis Vista

Que des vieux de la vieille soit resté en vb6 par simplicité, je le comprends, mais débuter dans ce langage en 2019 le paraît aberrant.

Pour rester chez Microsoft, Visual Studio Community est gratuit sous conditions ( mais un programme perso rentre dans ces conditions) il donne accès à C#, Vb.Net, Python, F# etc... Qui sont des langages actuels, maintenus et évolutifs

Si Community te parrait trop lourd, il y a aussi les versions express ( VisualBasicExpress etc...)
Messages postés
25
Date d'inscription
lundi 24 décembre 2018
Statut
Membre
Dernière intervention
18 février 2019

bonjour
je suis reste a vb6 car c est le logiciel qui sur mon pc cela me convient bien
tu n a pas repondu a ma question
un vieux de la vieille comme tu dit
Messages postés
25
Date d'inscription
lundi 24 décembre 2018
Statut
Membre
Dernière intervention
18 février 2019

bonjour
au vu du forum il y a pas mal de personne qui sont reste a vb 6 vu le nombre de question
Messages postés
15933
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
14 mai 2021
545
Oui c’est sûr qu’il y a encore du monde en vb6. Et non je n’ai pas répondu. Y’a 13 ans que je ne code plus en vb6, alors je ne me souviens pas de tout.
N’y a t il pas une propriété Sorted dans les listbox?
Messages postés
2427
Date d'inscription
samedi 11 janvier 2014
Statut
Contributeur
Dernière intervention
6 mai 2021
137
Bonjour à vous deux !
tu as raison Whis il y a bien la propriété Sorted et aussi la méthode Sort en VB 6 pour les Listbox mais le tri se fait sur le contenu String des Items de la Listbox
Ce qui fait que "12" est < à "2" alors que numériquement cela est faux !
C'est pour cela que j'ai conseillé à totoche1748 de trier d'abord les valeurs dans un tableau d'Integer par exemple puis de les afficher ensuite dans la Listbox
Pour totoche1748 je suis aussi un vieux de la vieille ( 68 balais ) et j'ai suivi l'évolution ( VB 5 puis VB 6 puis VB Net ) ! Je t'invite à prendre le train en marche si tu veux !
@ ++
Messages postés
15933
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
14 mai 2021
545
mais le tri se fait sur le contenu String des Items
Oui, mais il suffit de rentrer les nombres au format « 001 »
Messages postés
2427
Date d'inscription
samedi 11 janvier 2014
Statut
Contributeur
Dernière intervention
6 mai 2021
137 >
Messages postés
15933
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
14 mai 2021

Bonjour Whis
Mais c'est ce qu'il veut éviter justement !
voici sa demande : comment faire un tri décroissant
dans une List box sans devoir ajouter des 1 ou 2 chaines "0" devant chaque chiffre
Messages postés
15933
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
14 mai 2021
545
Ha zut
Messages postés
15933
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
14 mai 2021
545
Et " 1" ça ne marchait pas?
Messages postés
2427
Date d'inscription
samedi 11 janvier 2014
Statut
Contributeur
Dernière intervention
6 mai 2021
137 >
Messages postés
15933
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
14 mai 2021

Salut Whis !
Non cela ne marche pas !
Dans la liste des chaines représentant des valeurs numériques il faut faire précéder la chaine d' un certain nombre de "0"
Ce nombre est = à la taille de la chaine représentant la plus grande valeur du tableau moins le nombre de caractères de la chaine représentant le nombre
Exemple "10", "21" et "125"
Taille max = 3 caractères pour "125"
"10" et "21" ont 2 caractères donc on rajoute un "0" cela devient alors "010", "021" et "125" et le tri se fait correctement
Ce qui est important c'est que le code Ascii du "0" est inférieur à celui de tous les caractères numériques de "1" à "9"
Ceci fait que "02" sera inférieur au niveau comparaison chaines à "10" alors que "10" est inférieur à "2" au niveau chaine
Messages postés
25
Date d'inscription
lundi 24 décembre 2018
Statut
Membre
Dernière intervention
18 février 2019

bonjour a tous les 2
j ai suivi vaut conseille mais je n arrive pas a installer VisualBasicExpress
apparemment arrive a 25 % il s arrête et me demande de quitter je ne sais pas pourquoi
bonsoir
Messages postés
15933
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
14 mai 2021
545
Quelle "millésime" de VBExpress? Et quel Windows as tu?
Messages postés
25
Date d'inscription
lundi 24 décembre 2018
Statut
Membre
Dernière intervention
18 février 2019

bonjour
Visual basic express 2017 et Windows 7
ps ce matin je recommence on verra bien
Messages postés
15933
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
14 mai 2021
545
2017 devrait marcher sur W7, cependant, je croyais que la dernière version Express était 2012, depuis c'est Community
Messages postés
2427
Date d'inscription
samedi 11 janvier 2014
Statut
Contributeur
Dernière intervention
6 mai 2021
137 >
Messages postés
15933
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
14 mai 2021

Salut Whis
Visual Basic Express 2017 existe bien d'après ceci : https://visualstudio.microsoft.com/fr/vs/express/
Fais défiler la page vers le bas pour le voir
Il dise cependant que Community est préférable
Messages postés
15933
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
14 mai 2021
545
Oui, j’avais vu