Prblm petit programme vbs, peine a trouver l'erreur
Résolu/Fermé
docteur_nemo
Messages postés
21
Date d'inscription
vendredi 7 juillet 2017
Statut
Membre
Dernière intervention
17 juillet 2018
-
7 juil. 2017 à 14:16
félix - 10 juil. 2017 à 22:51
félix - 10 juil. 2017 à 22:51
A voir également:
- Prblm petit programme vbs, peine a trouver l'erreur
- Erreur 0x80070643 - Guide
- Trouver adresse mac - Guide
- Programme demarrage windows 10 - Guide
- Trouver un numéro de portable avec un nom ✓ - Forum Mobile
- Trouver un nom avec une adresse ✓ - Forum Loisirs / Divertissements
4 réponses
Unombre
Messages postés
40
Date d'inscription
lundi 11 juillet 2016
Statut
Membre
Dernière intervention
8 septembre 2017
16
7 juil. 2017 à 14:31
7 juil. 2017 à 14:31
Salut !
Je pense que quand ton y = -1 les 2 conditions sont valide ( plus petit et hors borne)
C'est pour ca que tu as les 2 messages
Je pense que quand ton y = -1 les 2 conditions sont valide ( plus petit et hors borne)
C'est pour ca que tu as les 2 messages
yg_be
Messages postés
22730
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
26 avril 2024
1 477
7 juil. 2017 à 20:28
7 juil. 2017 à 20:28
bonjour,
tenant compte de la remarque de Unombre, tu pourrais faire ainsi:
tenant compte de la remarque de Unombre, tu pourrais faire ainsi:
If y < 1 or y > 100 then 'hors bornes msgbox "tu n'est pas dans les bornes",0,"plus ou moins" ElseIf y < x then 'plus petit msgbox "plus grand",0,"plus_ou_moins" ElseIf y > x then 'plus grand msgbox "plus petit",0,"plus_ou_moins" ElseIf y = x then 'egal
docteur_nemo
Messages postés
21
Date d'inscription
vendredi 7 juillet 2017
Statut
Membre
Dernière intervention
17 juillet 2018
8 juil. 2017 à 19:08
8 juil. 2017 à 19:08
merci, je l'ai optimisé
Bonjour docteur_nemo,
Je te propose ce code (vérifie le GoToLine) :
Merci de me dire si ça te convient.
Je te propose ce code (vérifie le GoToLine) :
Randomize MsgBox "hhh" x = Int(Rnd * 100) + 1 'tirage nb aléatoire 1<x<100 Do Do y = InputBox("ton nombre", "plus_ou_moins", "nbr") 'input nbr joueur If y >= 1 And y <= 100 Then Exit Do 'dans les bornes MsgBox "tu n'es pas dans les bornes", 0, "plus ou moins" Loop If y = x Then 'egal MsgBox "félicitations, tu as trouvé", 0, "plus_ou_moins" Z = MsgBox("veux-tu recommencer ?", 4 + 32, "plus_ou_moins") 'question If Z = 6 Then 'oui GoToLine 10 ' à adapter pour qu'il pointe sur la ligne du 2ème Do End If If Z = 7 Then 'non MsgBox "Merci d'avoir joué", 0, "plus_ou_moins" 'message au revoir WScript.Quit End If End If ' si trouvé : traitement effectué ci-dessus ; sinon, ' ce sera forcément plus petit ou plus grand : If y < x Then 'plus petit MsgBox "plus grand", 0, "plus_ou_moins" Else 'plus grand MsgBox "plus petit", 0, "plus_ou_moins" End If Loop
Merci de me dire si ça te convient.
docteur_nemo
Messages postés
21
Date d'inscription
vendredi 7 juillet 2017
Statut
Membre
Dernière intervention
17 juillet 2018
7 juil. 2017 à 22:59
7 juil. 2017 à 22:59
Fantastique, merci ^^
yg_be
Messages postés
22730
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
26 avril 2024
1 477
>
docteur_nemo
Messages postés
21
Date d'inscription
vendredi 7 juillet 2017
Statut
Membre
Dernière intervention
17 juillet 2018
8 juil. 2017 à 10:19
8 juil. 2017 à 10:19
peux-tu marquer ceci comme résolu?
merci!
merci!
docteur_nemo
Messages postés
21
Date d'inscription
vendredi 7 juillet 2017
Statut
Membre
Dernière intervention
17 juillet 2018
8 juil. 2017 à 19:09
8 juil. 2017 à 19:09
en fait ca n'as finalement pas fonctionné
félix
>
docteur_nemo
Messages postés
21
Date d'inscription
vendredi 7 juillet 2017
Statut
Membre
Dernière intervention
17 juillet 2018
8 juil. 2017 à 20:15
8 juil. 2017 à 20:15
Bonjour docteur_nemo,
Dans le programme que j'avais fait, j'avais oublié l'instruction int =>
si tu corriges ainsi la ligne #11, ça devrait aller :
y = Int(InputBox("ton nombre", "plus_ou_moins", "nbr")) 'input nbr joueur
car le retour de InputBox est du texte, et avec Int, c'est converti en entier.
À part ça, la structure était mieux (ordre des tests) ; et tu auras remarqué
qu'on sort de la 2ème boucle Do seulement si le nb y est dans les bornes.
D'autre part, si WScript.Quit arrête le programme et sort de la sub,
c'est ok ; sinon, il suffit de rajouter juste après « : Exit Sub ».
Dans le programme que j'avais fait, j'avais oublié l'instruction int =>
si tu corriges ainsi la ligne #11, ça devrait aller :
y = Int(InputBox("ton nombre", "plus_ou_moins", "nbr")) 'input nbr joueur
car le retour de InputBox est du texte, et avec Int, c'est converti en entier.
À part ça, la structure était mieux (ordre des tests) ; et tu auras remarqué
qu'on sort de la 2ème boucle Do seulement si le nb y est dans les bornes.
D'autre part, si WScript.Quit arrête le programme et sort de la sub,
c'est ok ; sinon, il suffit de rajouter juste après « : Exit Sub ».
félix
>
docteur_nemo
Messages postés
21
Date d'inscription
vendredi 7 juillet 2017
Statut
Membre
Dernière intervention
17 juillet 2018
10 juil. 2017 à 22:51
10 juil. 2017 à 22:51
@docteur_nemo
Est-ce que tu utilises seulement VBS ? ou tu utilises aussi le VBA d'Excel ?
Si tu as Excel : en quelle version ? j'ai un fichier Excel qui pourrait bien
t'intéresser. À te lire.
yg_be
Messages postés
22730
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
26 avril 2024
1 477
7 juil. 2017 à 23:20
7 juil. 2017 à 23:20
et ainsi?
y = int(InputBox("ton nombre","plus_ou_moins","nbr")) 'input nbr joueur
docteur_nemo
Messages postés
21
Date d'inscription
vendredi 7 juillet 2017
Statut
Membre
Dernière intervention
17 juillet 2018
8 juil. 2017 à 19:10
8 juil. 2017 à 19:10
merci, prblm résolu
7 juil. 2017 à 20:27
7 juil. 2017 à 21:20
que fait le programme?
7 juil. 2017 à 22:56
7 juil. 2017 à 23:15
8 juil. 2017 à 10:04