EXCEL Valeur maxi en saisie sur cellule USERFORM

Résolu
Gilles.DR315 Messages postés 28 Statut Membre -  
 foo -
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

  1. Le Pingou Messages postés 12276 Date d'inscription   Statut Contributeur Dernière intervention   1 478
     
    Bonjour,
    Au passage, réaliser un pas à pas sur la macro pour voir ce qui se passe au niveau des conditions (If,,,).

    0
  2. foo
     
    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