If...Then...ElseIf...Then...End If

SesechXP Messages postés 49 Date d'inscription jeudi 26 juin 2003 Statut Membre Dernière intervention 28 juillet 2006 - 27 août 2003 à 11:16
SesechXP Messages postés 49 Date d'inscription jeudi 26 juin 2003 Statut Membre Dernière intervention 28 juillet 2006 - 28 août 2003 à 16:30
Salut!
J'ai un problème pour mettre plusieurs conditions avec If...Then...ElseIf...Then...End If :ça marche pas! (je dois pas l'utiliser correctement). Voilà mon code :
If opbtn_comptearebours=true Then
ElseIf lbl_temps.Caption = "00:00:00" Then
Shell "shutdown -s -t 0"
End If
Y a t-il une erreur?
En fait il faut vérifier qu'1 option bouton est coché puis la 2è condition est que le contenu d'un label doit être "00:00:00" avant de faire une action...

8 réponses

cs_David68 Messages postés 2 Date d'inscription vendredi 15 août 2003 Statut Membre Dernière intervention 27 août 2003
27 août 2003 à 11:25
Salut, essai voir de faire ça :
If opbtn_comptearebourstrue And ElseIf lbl_temps.Caption "00:00:00" Then
Shell "shutdown -s -t 0"
End If

ou alors ça

If opbtn_comptearebours=true Then
If lbl_temps.Caption = "00:00:00" Then
Shell "shutdown -s -t 0"
End If
End If

ça devrait marcher mieux comme ça =)
0
crenaud76 Messages postés 4172 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 9 juin 2006 28
27 août 2003 à 11:28
Effectivment tu te plantes : Toi, tu dois faire comme cela :
If optbtn_comptearebours=true AND lbl_temps.captiion="00:00:00" Then
 Shell "shutdown -s -t -0"
End IF

Avec cela, le shutdown ne se fera que si l'optionbutton est a TRUE ET si la label contient "00:00:00"
Avec un if then elseif le test est du genre :
SI condition1 est vrai Alors
Je fais l'action1
SINON Si Condition2 est vrai alors
je fais l'action2
...
Fin Si
Cela sous-entend qu'une action est faite si une condition est vraie et que si cette condition est fausse et qu'une autre est vraie (condition2), alors on fait une autre action.
Si j'ai bien compris ce que tu veux, c'est qu'une action soit faite si une conditon ET une auter condition sont vraie. Donc pas de ELSEIF qui nécessite 2 actions possibles

J'ai été clair ???
Christophe R.
0
crenaud76 Messages postés 4172 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 9 juin 2006 28
27 août 2003 à 11:29
La c'est tout faux !!!!
Impossible de faire If Condition ANd ELSEIF ... !!!!!!!!!
Ca ne veut plus rien dire !! Le AND doit etre placé entre deux conditions !!

Christophe R.
0
cs_liquide Messages postés 1016 Date d'inscription samedi 22 mars 2003 Statut Membre Dernière intervention 24 juin 2008
27 août 2003 à 11:53
liquide
si j'ai bien compris je ferais ca:
If opbtn_comptearebours=true Then
If lbl_temps.Caption = "00:00:00" Then
Shell "shutdown -s -t 0"
End If
end If

ce qui veut dire que test 1ere (1er if)condition, si vrai alors test 2eme condition qui se situe a l'interieur de la 1ere condition, si 2eme est vrai alors fait le shell. en esperant avoir compris ce qeu tu voulais faire
0

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

Posez votre question
cs_David68 Messages postés 2 Date d'inscription vendredi 15 août 2003 Statut Membre Dernière intervention 27 août 2003
27 août 2003 à 12:23
Oui, autant pour moi, le Elsif est de trop, je voulais ecrire :
If opbtn_comptearebourstrue And lbl_temps.Caption "00:00:00" Then
Shell "shutdown -s -t 0"
End If
0
crenaud76 Messages postés 4172 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 9 juin 2006 28
27 août 2003 à 12:39
inutile d'imbriquer deux IF, un AND suffit

Christophe R.
0
cs_liquide Messages postés 1016 Date d'inscription samedi 22 mars 2003 Statut Membre Dernière intervention 24 juin 2008
27 août 2003 à 13:11
liquide
exact, mes excuses pour cette erreur
0
SesechXP Messages postés 49 Date d'inscription jeudi 26 juin 2003 Statut Membre Dernière intervention 28 juillet 2006
28 août 2003 à 16:30
Merci beaucoup à tous pour vos réponses. Maintenant je sais faire (et oui je suis débutant : à peine 2 mois de programmation en VB)
0
Rejoignez-nous