MsgBox "" ,vbYesNo

Signaler
Messages postés
4
Date d'inscription
dimanche 23 juin 2002
Statut
Membre
Dernière intervention
2 juillet 2002
-
Messages postés
156
Date d'inscription
samedi 12 janvier 2002
Statut
Membre
Dernière intervention
4 mars 2003
-
Loool, je suis un nob!
Salut, voila dans un de mes programmes, j'appelle une MsgBox ,vbYesNo.
J'aimerai donner une action a executer a Yes et une autre Action a No.
Je c po si il faut utiliser if then (ce que j'ai esssaier) mais je n'y arrive po en Tout cas @+

9 réponses

Messages postés
156
Date d'inscription
samedi 12 janvier 2002
Statut
Membre
Dernière intervention
4 mars 2003

if(MsgBox ("" ,vbYesNo) = vbYes) Then
Msgbox "Tu as cliqué sur Oui !", vbExclamation, "Coucou !"
else
Msgbox "Tu as cliqué sur Non !", vbExclamation, "Coucou !"
end if
Messages postés
4
Date d'inscription
dimanche 23 juin 2002
Statut
Membre
Dernière intervention
2 juillet 2002

Voila le code que g mis qui amrhce po @+

Private Sub Command1_Click()
MsgBox "Nous allons tester votre systeme pour savoir quelle type de Beep possedez-vous (Buzzer ou beep du haut parleur interne)", vbYesNo
If MsgBox("Nous allons tester votre systeme pour savoir quelle type de Beep possedez-vous (Buzzer ou beep du haut parleur interne)", vbYesNo) = vbNo Then
MsgBox "Pas de problème, vous pourrez tester le type de Beep sur votre machine une autre fois! @ bientot!"
End
If MsgBox("Nous allons tester votre systeme pour savoir quelle type de Beep possedez-vous (Buzzer ou beep du haut parleur interne)", vbYesNo) = vbYes Then
Beep
End If
End Sub
Messages postés
12
Date d'inscription
jeudi 27 juin 2002
Statut
Membre
Dernière intervention
2 juillet 2002
1
Bon, c tout con:

tu declares dans ta fonction une variable reponse de type string

Dim reponse as string

Pour choper la reponse a la message Box:

reponse = MsgBox(Message, vbYesNo, "Coucou")

Pour tester la reponse:

if reponse = vbYes then
...
end if

else
...

voilou ... ca devrait aller maintenant, non?
Messages postés
156
Date d'inscription
samedi 12 janvier 2002
Statut
Membre
Dernière intervention
4 mars 2003

champi, pas "as string" !!
vbYes, c'est pas une chaîne, c'est un nombre !!
À la limite, "as integer" !

Car c'est "as vbMsgBoxResult" qu'il faut écrire !
Messages postés
156
Date d'inscription
samedi 12 janvier 2002
Statut
Membre
Dernière intervention
4 mars 2003

Bref, voilà Un code "propre", LoverCraft :

Private Sub Command1_Click()
If MsgBox("Nous allons tester votre systeme pour savoir quelle type de Beep possedez-vous (Buzzer ou beep du haut parleur interne)", vbYesNo = vbNo) Then
MsgBox "Pas de problème, vous pourrez tester le type de Beep sur votre machine une autre fois! @ bientot!"
else
Beep
End If
End Sub
Messages postés
156
Date d'inscription
samedi 12 janvier 2002
Statut
Membre
Dernière intervention
4 mars 2003

Oups, excuse, j'ai fait une boulette dans mon code

Private Sub Command1_Click()
If MsgBox("Nous allons tester votre systeme pour savoir quelle type de Beep possedez- vous (Buzzer ou beep du haut parleur interne)", vbYesNo) = vbNo Then
MsgBox "Pas de problème, vous pourrez tester le type de Beep sur votre machine une autre fois! @ bientot!"
else
Beep
End If
End Sub
Messages postés
12
Date d'inscription
jeudi 27 juin 2002
Statut
Membre
Dernière intervention
2 juillet 2002
1
ca marche quand meme avec as string, mais t'as raison, c plus propre comme tu le fais
Messages postés
4
Date d'inscription
dimanche 23 juin 2002
Statut
Membre
Dernière intervention
2 juillet 2002

Merci à tous,
Je vous remercie de m'avoir aider dans ce code, mais y'avait encore une boulette :D lorsque que l'on cliquer sur NON, ca affichier le message "@ bientot..." et il fallait mettre END loool
Mais merci bcp ca marche.
Euh, je peux vous demander encore un trucs? (specialement a leneuf car c son code)
Vous pouvez placé des commentaire en fin de chaque ligne pour expliquer clairement a quoi sert le code.
Comme ca ca me servira de lecon.
Je vous envoie le programme des qu'il est fini!
@+
Messages postés
156
Date d'inscription
samedi 12 janvier 2002
Statut
Membre
Dernière intervention
4 mars 2003

Pas de problèmes, LoverCraft !

Private Sub Command1_Click()

If MsgBox("Nous allons tester votre systeme pour savoir quelle type de Beep possedez- vous (Buzzer ou beep du haut parleur interne)", vbYesNo) = vbNo Then 'Ici, on affiche une MsgBox, et si le mec clique sur non, on exécute les 2 lignes en dessous.
MsgBox "Pas de problème, vous pourrez tester le type de Beep sur votre machine une autre fois! @ bientot!"
end
else 'Si le mec n'a pas cliqué sur non, c'est qu'il a cliqué sur Oui, donc on exécute la ligne en dessous.
Beep
End If

End Sub

N'oublie pas, à chaque fois que tu écris "MsgBox", n'importe où dans le code, même dans une condition IF, une boite de message va s'afficher.

Aussi, le code que je t'ai passé hier soir, c'est pas le plus évident pour un débutant (je n'ai pas mis de variable pour accueillir la réponse de la msgbox, cela nous permet de ne pas utiliser un bloc de mémoire, inutilement dans ton cas.)
Et mon code n'est valable QUE s'il n'y a QUE 2 boutons sur ta msgbox.

Si tu as besoin d'aide, n'hésite pas :)