Boucle for, condition arrêt variable

Résolu
dmk04 Messages postés 206 Date d'inscription samedi 29 octobre 2005 Statut Membre Dernière intervention 7 mars 2012 - 11 oct. 2007 à 13:49
Kristof_Koder Messages postés 918 Date d'inscription vendredi 3 août 2007 Statut Membre Dernière intervention 27 octobre 2008 - 11 oct. 2007 à 22:25
Bonjour à tous,

Je débute en VB et ya une chose que je ne comprends vraiment pas :

lorsque j'exécute le code suivant :

Dim nbLignes As Long
Dim i As Long

nbLignes = 10
For i = 0 To nbLignes
    ......
    modification de nbLignes parfois
    ......
Next i

Le programme ne boucle que 10 fois sans tenir compte des modifications sur nbLignes !

Quelqu'un aurait-il un élément de réponse ??

Merci d'avance

7 réponses

Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
11 oct. 2007 à 14:04
la clause terminale d'une boucle For est calculée une fois, au début...

utilises une boucle Do While...

Dim nbLignes As Long
Dim i As Long

nbLignes = 10
Do Until i = nbLignes
    ......
    modification de nbLignes parfois
    ......
    i++
Loop

Renfield
Admin CodeS-SourceS- MVP Visual Basic
3
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
11 oct. 2007 à 14:07
Bonjour,

Je devine (malgré toi)...

Alors :

Si tu supprimes des lignes en chemin :
Commence alors par le bas pour remonter vers le haut (avec step -1).
Si par contre tu en ajoutes :
Il va falloir penser à autre chose qu'une boucle For...to...

Sois précis si tu veux une réponse précise.
0
dmk04 Messages postés 206 Date d'inscription samedi 29 octobre 2005 Statut Membre Dernière intervention 7 mars 2012
11 oct. 2007 à 14:10
J'ai mis une boucle While.
Normalement le for est une boucle while, mais pas en VB apparament...
0
dmk04 Messages postés 206 Date d'inscription samedi 29 octobre 2005 Statut Membre Dernière intervention 7 mars 2012
11 oct. 2007 à 14:12
Je supprime et j'ajoute... :)

++ existe en VB wouhahaa
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
dmk04 Messages postés 206 Date d'inscription samedi 29 octobre 2005 Statut Membre Dernière intervention 7 mars 2012
11 oct. 2007 à 14:14
Ah ben non, ça existe pas... ou alors je sais pas taper...
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
11 oct. 2007 à 21:28
j'ignore si ca existe ou pas en .Net, je pensais que si...

Renfield
Admin CodeS-SourceS- MVP Visual Basic
0
Kristof_Koder Messages postés 918 Date d'inscription vendredi 3 août 2007 Statut Membre Dernière intervention 27 octobre 2008 10
11 oct. 2007 à 22:25
Pas de ++ en VB.NET, mais du +=, -=, etc...
0
Rejoignez-nous