Probléme avec une boucle

germany1970
Messages postés
136
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