mercredi 11 mai 2016

Vérification de la saisie dans une TextBox

A placer sur l'événement KeyPress d'une TextBox

Gestion de certaines valeurs autorisées :

Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
    'n'accepte que les chiffres et le /
    If InStr("1234567890/", Chr(KeyAscii)) = 0 Then KeyAscii = 0: Beep
End Sub



Gestion de la décimale virgule / point

Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
 Select Case KeyAscii
    Case 44, 46 ' que l'on frappe une virgule ou un point
      If InStr(TextBox1.Text, ",") Then 'si déjà une virgule présent
         KeyAscii = 0 'on ne permet pas deux virgules
      Else ' sinon
        KeyAscii = 44 'on force la une virgule
      End If
    Case 48 To 57
      'on laisse passer car ce sont des chiffres
    Case Else
      KeyAscii = 0 'on ne laisse pas passer
 End Select
End Sub