Limiter saisie à Liste

[Résolu]
Signaler
Messages postés
3
Date d'inscription
samedi 26 novembre 2005
Statut
Membre
Dernière intervention
13 octobre 2008
-
Messages postés
14
Date d'inscription
mercredi 15 février 2006
Statut
Membre
Dernière intervention
7 mars 2006
-
Bonjour à tous,
Comment peut-on limiter la saisie d'un zone de texte à une liste déclarée préalablement.
Merci de vos réponses ;)

7 réponses

Messages postés
363
Date d'inscription
vendredi 14 février 2003
Statut
Membre
Dernière intervention
20 avril 2010
3
il faut intercépter l'évènement KeyPress

exmp empêche la saisie de a, b ou c

Private Sub Text1_KeyPress(KeyAscii As Integer)
If If (InStr(1, "abc", Chr(KeyAscii)) <> 0) Then
KeyAscii = 0
End If
End Sub
3
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 82 internautes nous ont dit merci ce mois-ci

Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
69
If (InStrB("abc", Chr$(KeyAscii)) = 0) And KeyAscii <> 8 And
KeyAscii <> 3 And KeyAscii <> 24 And KeyAscii <> 22
Then

KeyAscii = 0

End If



8 => touche BackSpace, sinon, on ne peut pas supprimer de caractère

3 / 24 / 22 => Presse papier. à noter que le presse papier n'est pas
ici vérifié, et pourrais contenir des caractères 'interdits'



à noter également que a, b et c sont autorisés, mais pas A, B ou C

pour ce faire,



InStrB("abc", Chr$(KeyAscii),Compare:=vbTextCompare)

ou

InStrB("abcABC", Chr$(KeyAscii))


Amusez-vous !
Renfield - thomas_reynald@msn.com
Admin CodeS-SourceS - MVP Visual Basic
3
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 82 internautes nous ont dit merci ce mois-ci

Messages postés
17286
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
23 décembre 2019
69
utilises un Combo, c'est plus approprié
(avec un Style = DropDown List)
Messages postés
3
Date d'inscription
samedi 26 novembre 2005
Statut
Membre
Dernière intervention
13 octobre 2008

Désoler, je me suis mal exprimé.
Je ne parles pas de zone de liste ou modifiable ou pas, mais de liste de caractères autorisées
Messages postés
14
Date d'inscription
mercredi 15 février 2006
Statut
Membre
Dernière intervention
7 mars 2006

bonjour tt le monde j'ai presque le meme problème mais avec "inputbox" je veux limité la saisie ds cette dernière en ( valeur numérique et non pas les carac) c'est en vb merci d'avance
Messages postés
363
Date d'inscription
vendredi 14 février 2003
Statut
Membre
Dernière intervention
20 avril 2010
3
heu je ne pense pas que tu puisses avoir ce controle sur le textbox de l'inputbox.

mais tu peux toujours tester le retour de ce dernier et réinviter l'utilisateur a une resaisie si besoin est.



Narf
Messages postés
14
Date d'inscription
mercredi 15 février 2006
Statut
Membre
Dernière intervention
7 mars 2006

salut je pense que c'est claire j'ai bien essaié avec l'inputbox y a pas de résultat merci Narf