une condition dans un do while qui plante ... - VB/VBA/VBS - Programmation
Marsh Posté le 22-07-2010 à 09:42:34
ReplyMarsh Posté le 22-07-2010 à 09:43:28
ReplyMarsh Posté le 22-07-2010 à 09:46:12
Bonjour,
Les indices de tableaux commencent à 0.
Dans ta boucle, tu initie i = 1. Sheets(1) correspond à la 2ème feuille de ton classeur.
Lorsque i passe à 2, la feuille N°3 n'existe pas ==> Indice hors de la plage.
Démarre avec i = 0. Cela devrait aller mieux.
Marsh Posté le 22-07-2010 à 09:50:49
j'ai compris pourquoi... c'est pas du C... l'instruction
Code :
|
plante quand i arrive à la fin , il ne quitte pas le while même si c'est un AND il vérifie les deux... (mal foutu !!) auriez vous une solution donc?
Marsh Posté le 22-07-2010 à 09:54:59
Arcbitre a écrit : Bonjour, |
euh ... non c'est faux les indices commencent à 1
enfin je vérifie avec mes lignes 2 et 3 et si je met sheets(0) ça plante
Marsh Posté le 22-07-2010 à 10:02:33
Arcbitre a écrit : Bonjour, |
La 1ere feuille commence a 1
@pierre a écrit : euh.. je sais pas trop comment tu peux savoir (je suis débutant ) ? |
Bah quand ca plante tu viens en mode debogage, tu mets ta souris sur i, et une infobulle devrait apparaitre te donnant la valeur de i
Ou tu peux aussi faire un
Debug.Print i
ou encore MsgBox i
Pour connaitre la valeur
Mais la 1ere solution est qd meme plus simple
Marsh Posté le 22-07-2010 à 10:05:01
Ooops, autant, au temps, OTAN pour moi! (Rayez la mention inutile)
Code :
|
Marsh Posté le 22-07-2010 à 10:07:45
ReplyMarsh Posté le 22-07-2010 à 10:09:58
@pierre a écrit : baaeeeuuu!! c'est sale mais ça marche ! ^^ merci à toi Arcbitre !! |
Ca répond pas a ma question, i renvoi quoi quand ca plante. Si tu ne comprends pas tes erreurs, tu n'avanceras qu'a reculons !! (J'aime cette phrase ! ^^ )
Arcbitre a écrit : Ooops,
|
Beurk
Marsh Posté le 22-07-2010 à 10:12:40
SuppotDeSaTante a écrit : |
j'ai expliqué plus haut http://forum.hardware.fr/hfr/Progr [...] m#t2010905 pourquoi ça plantais :et i = 3 au moment du plantage, parce que vba ne quitte pas le while même si la première condition est fausse et que c'est un AND
Marsh Posté le 22-07-2010 à 09:39:33
Bonjour à tous!
je suis un peu ennuyé, je ne comprend pas mon erreur , j'ai une condition dans un while qui retourne
"lindice n'appartient pas à la selection"
Je précise que mon classeur possède deux feuilles.
voici le bout de code
ce qui est bizarre c'est que les instructions 2 et 3 au dessus fonctionnent et c'est celle là qui plante :
Auriez vous une idée? Merci!
Message édité par @pierre le 22-07-2010 à 09:40:44