Ecrire que des chiffres

minotaure083 Messages postés 22 Date d'inscription dimanche 12 janvier 2003 Statut Membre Dernière intervention 10 mai 2005 - 16 janv. 2003 à 17:50
minotaure083 Messages postés 22 Date d'inscription dimanche 12 janvier 2003 Statut Membre Dernière intervention 10 mai 2005 - 17 janv. 2003 à 11:41
Bonjour,

J'ai créé un textbox dans lequel j'aimerai que l'utilisateur ne saisisse que des chiffres et non des lettres.

Merci d'avance

5 réponses

ThePsychowizard Messages postés 32 Date d'inscription mardi 26 novembre 2002 Statut Membre Dernière intervention 9 juillet 2004 1
16 janv. 2003 à 18:07
Fait un test des codes ascii sur l'évenement "keypress" et refuse les codes ascii correspondant aux chiffres...

The Psychowizard.
0
cs_zpiboo Messages postés 46 Date d'inscription vendredi 12 avril 2002 Statut Membre Dernière intervention 11 juin 2003 1
16 janv. 2003 à 18:08
Private Sub Text1_KeyPress(KeyAscii As Integer)
' Saisie numérique uniquement
'End If
If InStr("0123456789", Chr(KeyAscii)) = 0 Then
If KeyAscii <> 8 Then
KeyAscii = 0
End If
End If
End Sub
0
cs_rene38 Messages postés 1858 Date d'inscription samedi 29 juin 2002 Statut Membre Dernière intervention 17 octobre 2013 11
16 janv. 2003 à 18:13
Private Sub Text1_KeyPress(KeyAscii As Integer)
Select Case KeyAscii
Case 48 To 57
Case Else
KeyAscii = 0
End Select
End Sub

Si tu veux la possibilité de virgule (ou point),
tu remplaces
Case 48 To 57
par
Case 48 To 57, 44 pour la virgule
Case 48 To 57, 46 pour le point
0
cs_rene38 Messages postés 1858 Date d'inscription samedi 29 juin 2002 Statut Membre Dernière intervention 17 octobre 2013 11
16 janv. 2003 à 23:41
Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii = 46 Then ' remplace le point .
KeyAscii = 44 ' par la virgule ,
Exit Sub
End If
Select Case KeyAscii
Case 44, 8, 13, 48 To 57
'on accepte virgule, retour arrière, Entrée et les chiffres
Exit Sub
Case Else
'on refuse tout le reste
KeyAscii = 0
Exit Sub
End Select
End Sub
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
minotaure083 Messages postés 22 Date d'inscription dimanche 12 janvier 2003 Statut Membre Dernière intervention 10 mai 2005
17 janv. 2003 à 11:41
J'ai trouvé encore plus simple :

If KeyAscii <> 8 Then '8 = RetourArriere
If (KeyAscii < 48 Or KeyAscii > 57) Then
KeyAscii = 0 'La touche ne vaut rien
End If
End If
0
Rejoignez-nous