Probléme avec une boucle

germany1970 Messages postés 134 Date d'inscription mardi 4 mars 2008 Statut Membre Dernière intervention 22 mars 2014 - 13 avril 2011 à 03:48
FredDorine Messages postés 6 Date d'inscription mercredi 6 avril 2011 Statut Membre Dernière intervention 16 décembre 2011 - 13 avril 2011 à 08:27
Bonjour,
j'ai un test à faire donc voilà le code que j'ai :

If MaskedTextBox8.Enabled = True Then
date1 = CDate(Label46.Text)
date2 = MaskedTextBox8.Text
Label47.Text = DateDiff(DateInterval.Year, date2, date1)
If Label47.Text > 21 < 26 Then
TextBox5.BackColor = Color.Red
MsgBox("Attention Enfant dépasse l'âge de la garantie 21 ans", MsgBoxStyle.ApplicationModal, "Administrateur")
ComboBox13.Visible = True
If ComboBox13.Text = "Certificat scolaire fourni" Then
TextBox5.BackColor = Color.White
MsgBox("Enfant pris en charge jusqu'à l'age de 26 ans", MsgBoxStyle.ApplicationModal, "Administrateur")
End If
End If
End If

bon avec ce code je veux faire une codition alors si l'enfant dépasse 21 ans il est exclus de la garantie (là j'ai pas de probléme) mais s'il est scolarisé il est pris en charge jusqu'à l'age de 26 ans(alors là ou j'ai le probléme quand je valide ça passe pas j'ai toujours le message "attention enfant dépasse l'age de la garantie 21 ans" et je suis bloqué)
j'éspere que mon probléme est clair
merci pour votre aide

2 réponses

ricky84 Messages postés 44 Date d'inscription dimanche 8 septembre 2002 Statut Membre Dernière intervention 13 janvier 2014
13 avril 2011 à 07:52
If Label47.Text > 21 < 26 Then
If ComboBox13.Text = "Certificat scolaire fourni" Then
TextBox5.BackColor = Color.White
else
TextBox5.BackColor = Color.Red
end if (de if combobox13)
end if

et encore, cela ne marche que si combobox13 est déja visible et que le choix à déja été fait, mais c'est juste pour donner une idée !
0
FredDorine Messages postés 6 Date d'inscription mercredi 6 avril 2011 Statut Membre Dernière intervention 16 décembre 2011
13 avril 2011 à 08:27
Si j'ai bien compris la garantie s'appique jusqu'à 25 ans pour sujets scolarisés et jusqu'à 21 pour les autres. Dans ce cas il faut écrire:


If MaskedTextBox8.Enabled = True Then

date1 = CDate(Label46.Text)
date2 = MaskedTextBox8.Text
Label47.Text = DateDiff(DateInterval.Year, date2, date1)

select case combobox.text
case is "Certificat scolaire fourni"

TextBox5.BackColor = Color.White
MsgBox("Enfant pris en charge jusqu'à l'age de 26 ans", MsgBoxStyle.ApplicationModal, "Administrateur")

case else
If Label47.Text > 21 then
TextBox5.BackColor = Color.Red
MsgBox("Attention Enfant dépasse l'âge de la garantie 21 ans", MsgBoxStyle.ApplicationModal,"Administrateur")
ComboBox13.Visible = True
End If
End select
End If

Un conseil: préferez select case à If then else chaque fois qu'il y a +ieurs conditions

non novae sed nova... (rien de nouveau sauf dans la manière)
0
Rejoignez-nous