Bonjour,
Une de mes macros beug sur la boucle suivante :
Le debogage indique que c'est la ligne soulignée qui est incorrecte. Pourquoi ?Code:
1
2
3
4 Set cel = Range("Feuil1!H2") Do While cel <> "blabla" cel = cel.Offset(1) Loop
Version imprimable
Bonjour,
Une de mes macros beug sur la boucle suivante :
Le debogage indique que c'est la ligne soulignée qui est incorrecte. Pourquoi ?Code:
1
2
3
4 Set cel = Range("Feuil1!H2") Do While cel <> "blabla" cel = cel.Offset(1) Loop
Bonjour
offset(nbligne,nbcolonne), 2 parametre
offset(0,1) decale d'une colonne
Je croyais que quand on tapait offset avec un seul argument l'ordi partait du principe que c'était le nb de lignes et que nb de colonnes=0. Je l'ai déjà utilisé avec un seul argument ça marche très bien... J'ai quand même suivi ton conseil : j'ai remplacé cel.Offset(1) par cel.Offset(1,0). Maintenant le débogage indique que l'erreur se trouve à la ligne "Loop"... je ne comprend pas plus...
J'ai changé cette boucle contre une 2e qui est sencé faire la même chose :
Celle-ci marche très bien, ça fait plaisir. Cela dit j'aimerais quand même comprendre où est le problème dans la 1ère.Code:
1
2
3
4
5
6
7 Set cel = Range("Feuil1!H2") j = 2 Do While cel <> "" If cel = "blabla" Then Exit Do j = j + 1 Set cel = Range("Feuil1!H" & j) Loop
re:
d'apres ce que je vois, la premiere boucle ne pouvait fonctionner puisque cel n'evoluait pas, donc restait sur la meme cellule
alors que la deuxieme cel evoluant, il a des chances de trouver blabla ou encore d'etre à vide pour sortir de la boucle
autre methode
de ce que je lis de la boucle, on l'arrete si cel est à blanc ou si cel = "blabla"Code:
1
2
3
4 set cel = range("H2") while cel <> "" and cel <> "blabla" set cel = cel.offset(1,0) wend
Ca marche. Merci beaucoup !