L'indice n'appartient pas à la selection ( boucle while )

Résolu/Fermé
develySIDE Messages postés 50 Date d'inscription lundi 15 octobre 2012 Statut Membre Dernière intervention 27 avril 2016 - Modifié par develySIDE le 1/03/2016 à 15:53
develySIDE Messages postés 50 Date d'inscription lundi 15 octobre 2012 Statut Membre Dernière intervention 27 avril 2016 - 1 mars 2016 à 17:02
Bonjour,

voila je souhaiterais faire un parcours de ligne pour une colonne précise, et pour les valeurs de cette colonne, vérifier que la soustraction de la valeur à ma date soit bien inférieur à 6, cependant lors de l’exécution, problème, " l'indice n'appartient pas à la sélection ", or ici je ne copie pas de fichier (comme sur la plupart des topics avec cette erreur), je fait juste un test étant en train de m’initier à ce langage, pourriez vous m'aider ?

Private Sub BoutonLien_Click()

Dim anneedate As Integer

anneedate = Year(Now())

Dim i As Integer
i = 4

While Workbooks("peri.xlsx").Sheet("Statistique_CAF_1").Range("B" & i) <> ""
If (anneedate - Range("B" & i).Value) <= 6 Then
ThisWorkbooks.Sheets("Arrivee").Range("A" & i).Value = anneedate - Range("B" & i).Value
End If
i = i+1
Wend
End Sub


Merci d'avance

4 réponses

ThauTheme Messages postés 1442 Date d'inscription mardi 21 octobre 2014 Statut Membre Dernière intervention 29 juillet 2022 160
1 mars 2016 à 15:46
Bonjour develySide, bonjour le forum,

Tu ne redéfinis pas la variable i qui reste initialisée à 4! Donc tu boucles à l'infini (ou pas du tout d'ailleurs)...
Mais le message que tu as, semblerait indiquer une erreur dans un des noms des fichiers ou des onglets. Vérifie (espace avant ou après, accent, etc)...
0
develySIDE Messages postés 50 Date d'inscription lundi 15 octobre 2012 Statut Membre Dernière intervention 27 avril 2016
1 mars 2016 à 15:53
en réalité si, je continu de définir i, seulement lors du copier coller en effaçant les commentaires la ligne à été supprimé avec, navré
0
develySIDE Messages postés 50 Date d'inscription lundi 15 octobre 2012 Statut Membre Dernière intervention 27 avril 2016
1 mars 2016 à 16:12
hélas ca ne marche toujours pas
0
Bonjour

Essayes avec ça
Private Sub BoutonLien_Click()

Dim anneedate As Integer

anneedate = Year(Now())

Dim i As Integer
i = 4
With Workbooks("peri.xlsx").Sheet("Statistique_CAF_1")

While .Range("B" & i) <> ""
If (anneedate - .Range("B" & i).Value) <= 6 Then
ThisWorkbooks.Sheets("Arrivee").Range("A" & i).Value = anneedate - .Range("B" & i).Value
End If
i = i + 1
Wend

End With
End Sub
0
ThauTheme Messages postés 1442 Date d'inscription mardi 21 octobre 2014 Statut Membre Dernière intervention 29 juillet 2022 160
1 mars 2016 à 16:57
Bonjour le fil, bonjour le forum,

Comme je te l'ai dit dans mon premier post, ton message est significatif du nom mal orthographié. Soit du fichier peri.xlsx, soit d'un des deux onglets onglets, Statistique_CAF_1ou Arrivee. Vérifie et plutôt deux fois qu'une...
0
develySIDE Messages postés 50 Date d'inscription lundi 15 octobre 2012 Statut Membre Dernière intervention 27 avril 2016
1 mars 2016 à 17:02
Problème résolu, j'ai tout réécrit et tester par petite portion, impossible de savoir réellement d'ou cela pouvais venir mais dans tout les cas le problème est réglé, merci encore !
0