L'indice n'appartient pas a la selection

Résolu
spyderco Messages postés 16 Date d'inscription mardi 25 janvier 2005 Statut Membre Dernière intervention 22 mai 2006 - 9 mai 2006 à 16:00
NHenry Messages postés 15113 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 22 avril 2024 - 9 mai 2006 à 16:31
J'ai créée une fonction public dont voici le debut du code :

Public Function tri(choix As Integer, order As String)

Dim cnt, count, i, j As Integer
Dim temp, temp2 As String
count = 0

While workbooks("formulaire ajout mail.xls").Sheets("stockage").Range("A" & count + 1).Value <> ""
count = count + 1
Wend
ReDim t(count - 1, 1)

For cnt = 0 To count Step 1
stock = Split(workbooks("formulaire ajout mail.xls").Sheets("stockage").Range("A" & cnt + 1).Value, ",", , vbTextCompare)
t(cnt, 0) = stock(choix)
t(cnt, 1) = cnt + 1
Next cnt

Il m'indique a la ligne surligné, "érreur l'indice n'apartient pas a la selection". Pourtant le tableau est dimensionné et déclaré, et j'ai verifié avec une msgbox, stock(choix) existe et contient bien la valeur souhaitée.

Je lance la fontion comme cela :
tri 1 , "up"

5 réponses

malhivertman1 Messages postés 489 Date d'inscription mardi 16 novembre 2004 Statut Membre Dernière intervention 22 novembre 2007 1
9 mai 2006 à 16:04
Il te met cette erreur au 1er passage de ta boucle ou au dernier?
parce que ca viendrait soit de ton cnt=0 soit, de ton count step 1
3
spyderco Messages postés 16 Date d'inscription mardi 25 janvier 2005 Statut Membre Dernière intervention 22 mai 2006
9 mai 2006 à 16:12
c'etait au dernier passage, le probleme venais du count.
je l'ai remplacer par count - 1 et sa marche.

Merci
0
malhivertman1 Messages postés 489 Date d'inscription mardi 16 novembre 2004 Statut Membre Dernière intervention 22 novembre 2007 1
9 mai 2006 à 16:13
De rien, bonne continuation
++
0
NHenry Messages postés 15113 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 22 avril 2024 159
9 mai 2006 à 16:30
Bonjour

Essaye de remplacer
For cnt = 0 To count Step 1
Par
For cnt = 0 To count-1 ' Step 1 pas besoin, pris par défaut

Il est plus facile de batiser kk1 que de la convertir. (surtout en programmation)
Une question se pose sur le forum, pas en privé
NHenry (VB6, VBA excel, VB.NET, C++, C#.Net)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
NHenry Messages postés 15113 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 22 avril 2024 159
9 mai 2006 à 16:31
Bonjour

dsl, j'avais pas rafraichi la page .

Il est plus facile de batiser kk1 que de la convertir. (surtout en programmation)
Une question se pose sur le forum, pas en privé
NHenry (VB6, VBA excel, VB.NET, C++, C#.Net)
0
Rejoignez-nous