1 calcul avec 2 variables sur 2 itérations

Résolu/Fermé
lulu54500 - Modifié par lulu54500 le 6/03/2012 à 15:58
 lulu54500 - 6 mars 2012 à 16:23
Bonjour,

Je suis en train de créer une macro sous Visual Basic et je me heurte à un petit problème.
J'ai une boucle "For rwIndex = 1 To 200 Step 1 ........Next rwIndex" pour balayer tout mon fichier. Au milieu, j'ai plein de conditions "if ... end if". Pour une de ces conditions, j'ai besoin de variables qui sont sur 2 lignes différentes dans mon fichier Excel. Par exemple en B5 et B6 et mon calcul fait B5/B6.
J'ai essayé de mettre Cells(rwIndex-1,2) et Cells(rwIndex+1,2) mais ça ne marche pas. Il me met que je divise par zéro. En effet, le discriminant fait partie de l'itération suivante.
Est-ce possible de faire appel à des variables issues d'itérations différentes pour un même calcul ?
Comment puis-je faire ?

Bien cordialement

2 réponses

chossette9 Messages postés 4239 Date d'inscription lundi 20 avril 2009 Statut Contributeur Dernière intervention 12 septembre 2014 1 307
6 mars 2012 à 16:00
Bonjour,

vu que tu remplis tes valeurs au fur et à mesure, tu ne pourras calculer B5/B6 que quand B6 sera remplie.
Tu dois donc dire à ta boucle que quand tu es sur une ligne, tu dois diviser la ligne du dessus par la ligne courante. Donc il te faut utiliser Cells(rwIndex-1,2) et Cells(rwIndex,2).

Cordialement.
0
En fait dans ma macro, j'ai des calculs par exemple:
B5*C5 ....
B6*C6 ....
que j'affiche dans mon fichier Excel correspondante.

En D5 = une équation avec B5/B6, C6/C5 ...
En D6 = une équation avec B6/B5 ...
que j'affiche dans mon fichier Excel correspondante.
0