L'indice n'appartient pas a la selection [Résolu]

Messages postés
16
Date d'inscription
mardi 25 janvier 2005
Dernière intervention
22 mai 2006
- - Dernière réponse : NHenry
Messages postés
14357
Date d'inscription
vendredi 14 mars 2003
Dernière intervention
19 janvier 2019
- 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"
Afficher la suite 

5 réponses

Meilleure réponse
Messages postés
489
Date d'inscription
mardi 16 novembre 2004
Dernière intervention
22 novembre 2007
3
Merci
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

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 89 internautes nous ont dit merci ce mois-ci

Messages postés
16
Date d'inscription
mardi 25 janvier 2005
Dernière intervention
22 mai 2006
0
Merci
c'etait au dernier passage, le probleme venais du count.
je l'ai remplacer par count - 1 et sa marche.

Merci
Messages postés
489
Date d'inscription
mardi 16 novembre 2004
Dernière intervention
22 novembre 2007
0
Merci
De rien, bonne continuation
++
Messages postés
14357
Date d'inscription
vendredi 14 mars 2003
Dernière intervention
19 janvier 2019
365
0
Merci
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)
Messages postés
14357
Date d'inscription
vendredi 14 mars 2003
Dernière intervention
19 janvier 2019
365
0
Merci
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)

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.