Récupérer index d'un element d'une collection

Résolu
cs_clemse31 Messages postés 9 Date d'inscription jeudi 25 septembre 2008 Statut Membre Dernière intervention 15 janvier 2010 - 18 sept. 2009 à 12:32
elguevel Messages postés 718 Date d'inscription jeudi 19 décembre 2002 Statut Membre Dernière intervention 22 novembre 2016 - 18 sept. 2009 à 13:50
Bonjour,

j'aimerai savoir comment récupérer l'index d'un élément d'une collection contenant une certaine chaine de caractère.

Merci

4 réponses

elguevel Messages postés 718 Date d'inscription jeudi 19 décembre 2002 Statut Membre Dernière intervention 22 novembre 2016 3
18 sept. 2009 à 13:00
Il faut parcourir ta collection à la recherche de l'element que tu recherches ...

Exemple avec une collection que j'ai appelé Liste, et on va dire que tu recherche la chaine "Toto".

Dim Index As Integer = -1
For Each Element As String In Liste
  If (Element.Equals("Toto")) Then
    Index = Liste.IndexOf(Element)
    Exit For
   End If
Next


L'index de l'element "Toto" dans ta collection de chaine sera placé dans 'Index'. Après avec çà tu peux faire une fonction je pense.
1
elguevel Messages postés 718 Date d'inscription jeudi 19 décembre 2002 Statut Membre Dernière intervention 22 novembre 2016 3
18 sept. 2009 à 13:04
En faite pour cet exemple, il suffit que tu fasses : Liste.indexOf("Toto"), car la je suis partie d'une liste de chaine [ListOf(String)] mais si tu as une collection plus complexe, il faut utiliser la méthode decrite ci-dessus.

Ca depend après du type de collection que tu possèdes !?
0
cs_clemse31 Messages postés 9 Date d'inscription jeudi 25 septembre 2008 Statut Membre Dernière intervention 15 janvier 2010
18 sept. 2009 à 13:41
En fait voici mon code :

For Each i As String In My.Settings.TaillesColonesArticle2
If My.Settings.TaillesColonesArticle2.Contains(nomcolonne & "_*") Then
'index = ?????
End If
Next

Voila, j'aimerai que index soit égal à l"index de l'élement I.

C'est une collection de string
Si je met
index = My.Settings.TaillesColonesArticle2.IndexOf(i)


Je récupére la valeur de l'élément et non le numéro de l'index non?
0
elguevel Messages postés 718 Date d'inscription jeudi 19 décembre 2002 Statut Membre Dernière intervention 22 novembre 2016 3
18 sept. 2009 à 13:50
IndexOf permet de recupérer l'index de la collection (donc la position de ton element dans la liste) et non la valeur !

Donc c'est ce qu'il te faut ... non ?
0
Rejoignez-nous