Petite Macro Boucle While

Résolu/Fermé
petit1986 - 6 oct. 2009 à 11:11
 petit1986 - 6 oct. 2009 à 14:03
Bonjour,
Etant très très novice en VBA, je vous appelle à l'aide !
Je souhaite réaliser une boucle While pour faire la macro suivante :

Tant que la cellule B29 est inférieure à B30
on ajoute +1 à B29

En résumé, faire en sorte que la valeur de B29 s'incrémente de 1 en 1 jusqu'à la dernière valeur en dessous de B30 !
J'imagine qu'il faut déclarer la variable et là.... j'ai de grosses lacunes...
Je vous remercie donc d'avance des réponses et pistes que vous pourrez m'apportez !
Merci
petit1986
A voir également:

3 réponses

pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 744
6 oct. 2009 à 11:18
Salut,
Comme ceci, tout simplement :
Do While [B29] <= [B30] - 2 'j'ai mis B30 - 2 car lors de l'essai, la macro s'arrétais à B30 +1
[B29] = [B29] + 1
Loop
0
Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 1 204
6 oct. 2009 à 11:24
Bonjour,

Aucune difficulté majeur dans cet exercice :

Tant que la valeur de la cellule B29 est inférieur à la valeur de la cellule B30 - 1 Faire
Valeur cellule B29 + 1
Fin Tant que

Ce qui donne en VB:

While Range("B29").Value < Range("B30").Value - 1
    Range("B29").Value = Range("B29").Value +1
Wend


Il n'y a pas besoin de déclarer une variable.

;o)
0
Tout d'abord merci pour vos réponses ultra rapide !
En effet la boucle marche le plus simplement du monde ! Je m'étais embrouillé avec des trucs de fou...
Toutefois dans l'application que j'en fait, le résultat ne marche pas forcément, il s'arrête des fois à +1 de trop...
et aussi, je m'étais un peu trompé dans les cellules le vrai est :

Do While [B29] <= [C29] - 1
[B27] = [B27] + 1
Loop

en fait la valeur de B29 dépend pleinement de ma valeur en B27.
Mais je vous remercie quand même; j'ai des pistes, sympa...
Merci
0
Cà y est, j'ai trouvé juste une mini astuce pour régler le problème, il suffisait juste de prendre le problème dans l'autre sens !! ne pas dire tant que B29 est inférieure à C29 mais dire tant que B29 est supérieur à C29...
tout simplement !
Merci encore pour l'aide générale !
0