Boucle: Répéter un certain nombre (VB)

Résolu/Fermé
Utilisateur anonyme - 24 déc. 2007 à 23:55
 Kyoya31 - 14 nov. 2014 à 18:10
Bonjour,
Je voudrais savoir comment on fait pour spécifier le nombre de fois qu'il faut recommencer une boucle.
J'ai essayé:

While(3)
msgbox("Erreur", vbCritical, "Erreur")
'Ceci n'est qu'un exemple
End While

Et la boucle se fait à l'infini quand même!

Merci de m'aider dans ce projet en Visual Basic.

11 réponses

PPBoyington Messages postés 2007 Date d'inscription mercredi 21 novembre 2007 Statut Membre Dernière intervention 22 mai 2012 402
25 déc. 2007 à 07:18
je ne connais pas le VB mais String c'est chaine et pour faire des additions il vaut mieux un nombre
4
PPBoyington Messages postés 2007 Date d'inscription mercredi 21 novembre 2007 Statut Membre Dernière intervention 22 mai 2012 402
25 déc. 2007 à 00:12
A la place de 3 tu dois mettre une opération qui va devenir fausse...comme while (X<10) et dans ta boucle tu met X=X+1 donc si X demarre a 0 au bout de 11 fois il sera superieur a 10 la condition dans le While sera fausse, la boucle sera arretée.
2
Utilisateur anonyme
25 déc. 2007 à 01:34
Donc, j'ai fait comme ceci:

Dim x As String = 0

While(x < 3)
x = x + 1
msgbox"test", vbCritical, "Erreur"
End While

Mais ça ne marche pas... (ça devrait logiquement marcher mais non...)
En fait, c'est pas pour faire un message, mais un mailer.
Et je donne la possibilité d'envoyer plusieurs mails.

Donc, comment je m'en sors?
2
Dim x As String

x = "0"

While(x < 3)
x = x + 1
msgbox"test", vbCritical, "Erreur"
End While

Normalement ça doit marcher
0
cette boucle ne veut pas tourner la valeur pourquoi ?




Do

console.WriteLine("Entrer le numero de nif")
bool=false
chef1.nifo2=console.ReadLine()
If chef1.nifo2<>chef.nifo2 Then

bool=true
Else
If chef1.nifo2=chef.nifo2 Then
console.WriteLine("nif exite deja")
bool=false
End If
End if

loop while bool=true
2

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

Posez votre question
PPBoyington Messages postés 2007 Date d'inscription mercredi 21 novembre 2007 Statut Membre Dernière intervention 22 mai 2012 402
25 déc. 2007 à 07:18
je ne connais pas le VB mais String c'est chaine et pour faire des additions il vaut mieux un nombre
1
Essayez ça :

Private Sub Form_Load()
Dim i%, NombreDefois
i% = 0: NombreDefois = 10 'par exemple
Do Until i% > NombreDefois 'utilser Do plutôt que While
MsgBox (" Ce que vous voulez")
i% = i% + 1
Loop
End 'Arrêt ou Suite de votre programme
End Sub
1
Utilisateur anonyme
26 déc. 2007 à 22:09
Oui, mais à part les strings, comme chaîne de nombre, y'a quoi? (Je sais que tu te connais pas en VB, mais il y a des points communs entre les langages)
0
PPBoyington Messages postés 2007 Date d'inscription mercredi 21 novembre 2007 Statut Membre Dernière intervention 22 mai 2012 402
26 déc. 2007 à 22:16
integer,decimal...les connaisseurs de VB dites lui comment definir une variable NUMERIQUE...

et tant qu'a faire le bon vieux:
For I=1 to 10
msgbox"test", vbCritical, "Erreur"
next I

il ne marcherait pas en VB ? Parce que tu n'as pas besoin d'une condition logique si tu sais combien de fois tu veux faire tourner ta boucle dès le départ.
0
Utilisateur anonyme
26 déc. 2007 à 22:34
ça ne marche toujours pas!
0
PPBoyington Messages postés 2007 Date d'inscription mercredi 21 novembre 2007 Statut Membre Dernière intervention 22 mai 2012 402
26 déc. 2007 à 23:26
https://www.commentcamarche.net/contents/1185-vbscript-les-structures-conditionnelles

Tu regarde ici, le FOR NEXT est l'instruction qu'il te faut.
Si tu tapes ca :
For I=1 to 10
msgbox"test", vbCritical, "Erreur"
next I

Tu dois avoir 10 fois ton message d'erreur.
0
Utilisateur anonyme
27 déc. 2007 à 20:35
Ouais, maintenant ça marche!
Il fallait tout simplement mettre:

Mext

et non:

Next I

Maintenant, la boucle se fait le nombre de fois demandé!
Merci
0
Zakapuce Messages postés 64 Date d'inscription mercredi 2 janvier 2008 Statut Membre Dernière intervention 5 août 2011 7
13 févr. 2008 à 19:18
whouaa c'est vrai que tu t'y connais toi en msgbox ... je suis impressionné ... respect ...

Pour info
 Mext 
n'est pas du VB, une boucle
For
est toujours suivi d'un
NEXT
tout comme While ... Wend et Do ... Loop.
0