[VB6] Condition d'une boucle

Résolu/Fermé
Thibaut63 Messages postés 123 Date d'inscription dimanche 10 août 2008 Statut Membre Dernière intervention 27 janvier 2021 - 12 avril 2010 à 08:44
Thibaut63 Messages postés 123 Date d'inscription dimanche 10 août 2008 Statut Membre Dernière intervention 27 janvier 2021 - 12 avril 2010 à 13:47
Bonjour,


  While TAjoutAgnelage.Num_brebis <> TBrebis(placeBrebis).noBrebis And TAjoutAgnelage.date_nais <> TBrebis(placeBrebis).dateNaissance
            placeBrebis = placeBrebis + 1
    Wend


J'aimerai que sortir de ma boucle lorsque TAjoutAgnelage.Num_brebis = TBrebis(placeBrebis).noBrebis ET TAjoutAgnelage.date_nais = TBrebis(placeBrebis).dateNaissance

Mais cela ne fonctionne pas le programme sort de la boucle lorsque TAjoutAgnelage.Num_brebis = TBrebis(placeBrebis).noBrebis mais avec TAjoutAgnelage.date_nais différent de TBrebis(placeBrebis).dateNaissance

Where is the problème please ?

Merci d'avance !


A voir également:

2 réponses

Bonjour,
C'est pas un problème VisualBasic que tu as, mais un problème de compréhension de l'algorithmie.

Tu souhaite sortir de ta boucle quand 'Condition1=Vrai ET Condition2=Vrai'
Donc il faut boucler tant que 'Condition1=Faux OU Condition2=Faux'

Et donc il faut remplacer ton And par un Or ;
Tant que l'un OU l'autre est faux, on boucle. Donc en sortie de boucle les deux seront vrais.
Dans ton cas, tu sors dès que l'un des deux est vrai.

Cordialement, M.
1
Thibaut63 Messages postés 123 Date d'inscription dimanche 10 août 2008 Statut Membre Dernière intervention 27 janvier 2021 40
12 avril 2010 à 13:47
Merci bien !
Mais où avais-je la tête :)
0
Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 1 204
Modifié par Polux31 le 12/04/2010 à 11:38
Bonjour,


Pourquoi faire un While ?

Tu parcours un tableau avec pour index "placeBrebis". Essaie ça:

Dim i As Long 

For i = LBound(TBrebis()) To UBound(TBrebis()) 
     If TAjoutAgnelage.Num_brebis = TBrebis(placeBrebis).noBrebis And _ 
           TAjoutAgnelage.date_nais = TBrebis(placeBrebis).dateNaissance Then 

          'mon code 

     End If 
Next i


;o)
«Ce que l'on conçoit bien s'énonce clairement, Et les mots pour le dire arrivent aisément.»
Nicolas Boileau
0