EXCEL Valeur maxi en saisie sur cellule USERFORM

Résolu/Fermé
Gilles.DR315 Messages postés 26 Date d'inscription samedi 2 novembre 2013 Statut Membre Dernière intervention 27 janvier 2015 - Modifié par Gilles.DR315 le 6/02/2014 à 13:49
 foo - 6 févr. 2014 à 17:25
Bonjour,

Je débute en USERFORM

Pour l'utilisateur, j'ai crée cette ligne le limitant en valeur numérique à 3 chiffres, sans virgule et sans point.
mais je n'arrive pas à faire en sorte qu'il ne puisse pas dépasser 100

j'ai ce code, mais çà ne fonctionne pas sur la valeur Max.
L'idéal étant que s'il tape par exemple 105, on puisse avoir le message d'erreur
et que la cellule soit éffacée. Pour nouvelle saisie.

Private Sub quotité_1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If Len(Me.quotité_1) > 2 Then
Me.quotité_1 = Left(Me.quotité_1, 2)
End If
If Val(quotité_1.Text) > 100 Then
MsgBox "La quotité maximum est de 100, veuillez revoir."
End If
If InStr("1234567890", Chr(KeyAscii)) = 0 Then KeyAscii = 0: Beep
End Sub

Merci d'avance de votre aide.



2 réponses

Le Pingou Messages postés 12187 Date d'inscription mercredi 11 août 2004 Statut Contributeur Dernière intervention 14 novembre 2024 1 449
6 févr. 2014 à 16:40
Bonjour,
Au passage, réaliser un pas à pas sur la macro pour voir ce qui se passe au niveau des conditions (If,,,).

0
Bonjour

je voie un truc comme ca

Private Sub textbox2_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
Select Case KeyAscii
Case 48 To 57
KeyAscii = KeyAscii
Case Else
KeyAscii = 0
End Select
End Sub

Private Sub TextBox2_Change()
If Val(TextBox2.Value) > 100 Then
MsgBox "La quotité maximum est de 100, veuillez revoir."
TextBox2.Value = ""
End If
End Sub

A+

Maurice
0