Permettre de saisir dans un textbox que des caractère spécifié .

Soyez le premier à donner votre avis sur cette source.

Snippet vu 3 669 fois - Téléchargée 28 fois

Contenu du snippet

Permettre de saisir dans un textbox que des caractère spécifié dans un tableau .

Source / Exemple :


Private Sub test_KeyPress(KeyAscii As Integer)

Dim i As Integer ' la varialbe :) 
Dim chiffres ' le tableau 

nums = Array(65,12,58,69,45,65,26,32)  ' le tableau contenant le code ASCII des caractères permis .

For i = LBound(nums) To UBound(nums) ' on fé une boucle 
   
  If KeyAscii = nums(i) Then ' on teste le caractère      
    
              GoTo fin 'ca corresponds ! c permis alors on l'affiche 
   
  End If 

Next i ' ca correspond pas on compare alors avec le caractère permis suivant 

'Eh ben ca correspond pas du tout donc on n'affiche pas ! 
KeyAscii = 0 ' on affecte la valeur 0 au keyascii 
Beep' on emet un beep

fin: ' la finnnnn
End Sub

Conclusion :


Laissezzzzzzzzzzzzzzz Vosssssssss Commentaiiiiiiiiires !!!!!!

A voir également

Ajouter un commentaire

Commentaires

Neo.balastik
Messages postés
797
Date d'inscription
jeudi 17 mai 2001
Statut
Membre
Dernière intervention
5 mai 2009
4 -
Oulala que c'est compliqué ;O) Et l'utilisation d'un Goto !!! Faut oublier cela.

Voici plus simple un utilisant la fonction IsNumeric:

Private Sub Text1_KeyPress(KeyAscii As Integer)

If KeyAscii = 8 Then
KeyAscii = 8
ElseIf IsNumeric(Chr(KeyAscii)) = False Then
KeyAscii = 0
End If

End Sub

Courage
cs_akrame
Messages postés
18
Date d'inscription
dimanche 9 mai 2004
Statut
Membre
Dernière intervention
9 janvier 2006
-
Je coirs que comme ca c mieu :D
Sirocooo
Messages postés
412
Date d'inscription
mercredi 19 décembre 2001
Statut
Membre
Dernière intervention
7 avril 2008
1 -
On ne dit pas "on fé" mais "On fait"
Tu peux remplacer "goto fin" par "exit for"
Plutôt d'utiliser une boucle For Next, tu peux essayer d'utiliser la
fonction InString()
cs_dagdoug
Messages postés
5
Date d'inscription
samedi 8 mars 2003
Statut
Membre
Dernière intervention
28 mars 2006
-
et si on fait un copier-coller de caractères interdits dans le TEXTBOX ca marche pas !!
cs_salmen
Messages postés
3
Date d'inscription
mercredi 31 décembre 2003
Statut
Membre
Dernière intervention
17 juillet 2009
-
tous ça est une idée mais moi je préfére cette méthode :

Private Sub Text1_KeyPress(KeyAscii As Integer)

Dim allowedKeys As String
allowedKeys = "0123456789-,." & Chr(8)
If InStr(allowedKeys, Chr(KeyAscii)) 0 Then KeyAscii 0
End Sub

cette source consiste à rechercher le caractère entré, dans une chaîne contenant tous les caractères autorisés. Si ce caractère n'est pas dans la chaîne, rien n'est affiché.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.