Bonjour,
Je suis en train de faire un petit code sur vba excel mais j'ai un probleme avec la boucle while qui n'intègre pas les deux conditions que je lui associe:
ac = Worksheets("Interface").Cells(3, 3).Value
eng = Worksheets("Interface").Cells(4, 3).Value
While Worksheets("DataSheet").Cells(i, 1).Value <> ac And Worksheets("DataSheet").Cells(i, 2).Value <> eng
i = i + 1
Wend
......
.......
Quand j'exécute le code, dès que la première condition est vérifiée, il sort de la boucle sans tenir compte de la seconde condition.
Alors comment faire pour que ma boucle while prenne en compte les deux conditions? J'ai essayé en mettant des paranthèses pour séparer les deux conditions, mais ça change rien.
Merci d'avance

While ((Worksheets("DataSheet").Cells(i, 1).Value <> ac) And (Worksheets("DataSheet").Cells(i, 2).Value <> eng ))
mais sinon il a raison pour les opérateurs logiques en VBA voici le cours
http://www.commentcamarche.net/contents/vbscript/vbsop.php3
Dans Worksheets("DataSheet") .Cells(i, 1) j'ai des avions et dans Worksheets("DataSheet") .Cells(i, 2) j'ai des moteurs.
Je rentre dans une feuille qui s'appelle Worksheets("Interface") un avion (ac) et un moteur (eng) respectivement "B747" et "PW4000"
L'idée c'est de récupérer la ligne i de Worksheets("DataSheet") où Worksheets("DataSheet") .Cells(i, 1) = "B747" et Worksheets("DataSheet") .Cells(i, 2) = "PW4000" pour faire d'autres traitements.
Qd je rentre le moteur qui correspond au bon avion, ya pas de pb
Mais qd je rentre un moteur qui ne correspond pas à l'avion, je m'attends à ce qu'il ne trouve rien, à la limite je mets une conditions pour qu'il sorte de boucle. Mais à ma grande surprise, il récupère la ligne i de la première condition qui est vérifiée.
Donc en gros les deux condtions paraissent dissociées, ce que je ne comprends pas.