Les Allergies
Alimentaires
Posez votre question Signaler

Excel VBA, boucle while... (débutant)

usky23 3Messages postés 27 février 2010Date d'inscription 15 juin 2010Dernière intervention - Dernière réponse le 15 juin 2010 à 22:44
Bonjour,
j'essaye de faire une boucle en VBA et étant débutant j'ai du mal.
En fait, je veux tester la valeur d'une cellule et tant qu'elle est inférieure à 17, j'incrémente de 1 la valeur d'une autre (ce qui va modifier la valeur de la première...)
mon problème c'est que soit ma boucle ne s'arrête pas, soit elle n'exécute qu'une partie des instructions...
quelqu'un aurait une idée ? je crois que c'est la condition de ma boucle qui est mauvaise...
    Range("I20").Select
    ActiveCell.Formula = "=VLOOKUP(INDEX(R1C4:R260C4,R12C15+8),R1C1:R260C3,2,0)"
    Dim i As Integer
    i = 1
    Range("G23").Select
    While ActiveCell.FormulaR1C1 < 17
        Range("H24").Select
        ActiveCell.FormulaR1C1 = i
        Range("G23").Select
        i = i + 1
    Wend
Lire la suite 

Excel VBA, boucle while... (débutant) »

1 réponses
Réponse
+1
moins plus
Bonsoir,

Effectivement qcq erreurs, mais on a tous commencé comme ça...

Evite les .select presque toujours inutiles, qui alourdissent le code et ralentissent

Evite .FormulaR1C1 pour mettre une valeur, utilise .value
Et comme la propriété par défaut pour une cellule est justement .value tu peux même t'abstenir de la mettre

Pourquoi n'utilises-tu pas directement i pour ta boucle ?
Tu utilises G23 qui n'évolue jamais (?), normale qu'elle boucle en permanence
   i = 1
    While i < 17
        Range("H24")= i
        i = i + 1
    Wend

et mis comme ça on se demande l'interet de ta boucle (??) à moins que tu n'aies pas mis tout le code.

eric
Ajouter un commentaire
Ce document intitulé « Excel VBA, boucle while... (débutant) » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?