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

Signaler
Messages postés
16
Date d'inscription
mardi 25 janvier 2005
Statut
Membre
Dernière intervention
22 mai 2006
-
Messages postés
14692
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
11 août 2020
-
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

Messages postés
489
Date d'inscription
mardi 16 novembre 2004
Statut
Membre
Dernière intervention
22 novembre 2007

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
Merci

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

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

Messages postés
16
Date d'inscription
mardi 25 janvier 2005
Statut
Membre
Dernière intervention
22 mai 2006

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
Statut
Membre
Dernière intervention
22 novembre 2007

De rien, bonne continuation
++
Messages postés
14692
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
11 août 2020
144
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
14692
Date d'inscription
vendredi 14 mars 2003
Statut
Modérateur
Dernière intervention
11 août 2020
144
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)