Limitation valeur dans textbox

Résolu
OMC - 21 oct. 2013 à 18:50
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 - 27 oct. 2013 à 19:01
Dans userform1 j'ai confectionné 1 textbox qui sert la saisie d'une valeur qui débute a partir de 15000,00DA à 100 000,00 DA ;Mon but est de forcer la saisie a partir de 15 000,00 DA dans textbox et en temps utilisé un msgbox

3 réponses

jordane45 Messages postés 38139 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 20 avril 2024 344
21 oct. 2013 à 19:00
Bonjour.
Voir la méthode change de la textbox et faire une comparaison. ..
0
a limitation
27 oct. 2013 à 18:58
Je te remercie infiniment de m'envoyer se code relatif à la limitation de textbox et encore une fois merci d'avance
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
Modifié par ucfoutu le 27/10/2013 à 19:02
Et si tu lisais cette discussion jusqu'au bout, "a limitation" ?
Il y est ce code, non ?
0
lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 2
22 oct. 2013 à 08:24
Bonjour,
Je pense que ce serait plus facile quand quite le TextBox
Private Sub TextBox1_AfterUpdate()
Dim D As Double
D = IIf(IsNumeric(TextBox1.Value), TextBox1.Value, 0)
If D < 15000 Or D > 100000 Then
MsgBox "la valeur doit être comprise entre 15.000 et 100.000"
TextBox1.Text = ""
TextBox1.SetFocus 'Bug Excel ? fonctionne pas ?
End If
End Sub

A+
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
Modifié par ucfoutu le 22/10/2013 à 08:44
Bonjour, lermitte222, je le ferais avant (befor update et me servirait du cancel) ===>>
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)
D = IIf(IsNumeric(TextBox1.Value), TextBox1.Value, 0)
If D < 15000 Or D > 100000 Then MsgBox "non": Cancel = True
End Sub
0
lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 2
22 oct. 2013 à 11:05
Bonjour Ucfoutu, bien vu mais quand même petit ajout
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)
'Pour éviter double appel.
If TextBox1.Text = "" Then Exit Sub
Dim D As Double
D = IIf(IsNumeric(TextBox1.Value), TextBox1.Value, 0)
If D < 15000 Or D > 100000 Then
MsgBox "la valeur doit être comprise entre 15.000 et 100.000"
TextBox1.Text = ""
Cancel = True
End If
End Sub

A+

0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
Modifié par ucfoutu le 22/10/2013 à 11:19
ou encore (marche sans faille)
Private Sub TextBox1_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)
Select Case TextBox1.Value
Case Not IsNumeric(TextBox1.Value), Is < 15000, Is > 100000
MsgBox "non": Cancel = True
End Select
End Sub
0
Rejoignez-nous