Boucle sur liste de nombre

Résolu
fenlabize Messages postés 7 Date d'inscription jeudi 17 mars 2005 Statut Membre Dernière intervention 14 février 2006 - 14 févr. 2006 à 20:05
fenlabize Messages postés 7 Date d'inscription jeudi 17 mars 2005 Statut Membre Dernière intervention 14 février 2006 - 14 févr. 2006 à 21:02
bonjour a tous,
j'ai une variable qui contient une liste de nombre qui correspond à des objets(barre métallique pour info), qui se nomme : nomselection as variant
nomselection="1a4 101a104"
je voudrais faire un test sur chaque numero (1 2 3 4 101 102 103 104) dans la liste donc faire une boucle sur cette liste mais je ne sais pas comment faire.
Sachant que si je teste un numero qui n'existe pas,le numero 5 par exemple, qui ne fait reference à rien dans mon programme, ca plante.
merci pour votre aide

2 réponses

cs_Jack Messages postés 14007 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 78
14 févr. 2006 à 20:33
Salut
Ton choix de stocker une liste genre "1a4" pour ficgurer les chiffres 1,2,3,4 ne va pas simplifier les choses.
Il va falloir :
- Détecter les groupes de chiffres --> Séparateur "espace" pour isoler "1a4" et "101a104"
Un Split suffira
Dim Tableau() As String
Tableau = Split(nomSelection, " ")
Tu auras "1a4" dans Tableau(0) et "101a104" dans Tableau(1)
Au passage, n'utilise pas de Variant, c'est lourd et ça ralenti VB. Utilise String puisque ta variable peut contenir chiffres et lettres (de plus, Split ne fonctionne que sur les String)

- Pour chacun des groupes, isoler le début et la fin en repèrant le "a"
Encore un Split :
Dim Variable() As String
Variable = Split(Tableau(0), "a")
Tu auras "1" dans Variable(0) et "4" dans Variable(1)

- Chercher dans tes objets :
Il suffit de faire une boucle
Début = Val(Variable(0))
Fin = Val(Variable(1))
For r = Début To Fin
... recherche
Next r

N'ayant pas plus d'info sur le "où chercher", je ne peux pas aller plus loin ...

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage. (Socrate)
3
fenlabize Messages postés 7 Date d'inscription jeudi 17 mars 2005 Statut Membre Dernière intervention 14 février 2006
14 févr. 2006 à 21:02
merci c'est excatement ce que je voulais
0