pb debutant

pb debutant - VB/VBA/VBS - Programmation

Marsh Posté le 02-07-2004 à 11:18:52    

j'utilise visual basic pour créerune apllication style "caisse pour une asso"
je voudrait savoir comment je peut faire pour dans mon textbox l'utilisateur ne peut mettre que des chiffres en d'autres therme que si il appuis sur une lettre ou autre d'autres caractères autre que des chiffres rien ne se passe car je fait une application avec des caluls est si une lettre s'introduit tout plante !
 
je sais que je peut lui demander de ne prendre que la valeur dans une fenetre appart mais je voudrait qu'une seule fenètre.
 
merci our vos reponses!


---------------
http://dreaminformatique.com le reve informatique
Reply

Marsh Posté le 02-07-2004 à 11:18:52   

Reply

Marsh Posté le 02-07-2004 à 11:31:18    

regarde son format  s'il est pas en currency kk chose comme ca ou si la source de ton textbox (donc ta table) n'est pas un nombre plutot qu'un champ text

Reply

Marsh Posté le 02-07-2004 à 13:11:24    

je vais verifier son format ce soir mais je ne voit pas le rapport avec la table car l'erreur ce produit pendant le calcul avnt l'enregistrement dans ma table (ma base de donnée accès)


---------------
http://dreaminformatique.com le reve informatique
Reply

Marsh Posté le 02-07-2004 à 13:56:07    

mmuzzik a écrit :

regarde son format  s'il est pas en currency kk chose comme ca ou si la source de ton textbox (donc ta table) n'est pas un nombre plutot qu'un champ text


Je ne pense pas que son textBox soit relié à une table
 
Sinon pour faire des calculs, tu dois bien convertir ton String en Réel ? Donc tu peux lever une exception si ça plante à ce moment là (et donc la traiter : arret de la procédure, message d'erreur...)

Reply

Marsh Posté le 02-07-2004 à 15:19:14    

mon pb n'est pas d'enlever l'erreur enfin si mais en empechant les lettres de s'afficher.
je sait faire ça sous visual C++ mais la je ne voit pas. sous visual C++ il faut juste dans les propriété du editbox de cocher number mais sous visual basic je sais !

Reply

Marsh Posté le 02-07-2004 à 15:19:42    

correctio je sais pas

Reply

Marsh Posté le 02-07-2004 à 15:45:39    

Il existe un controle sous VB6 qui s'appelle MaskEdit qui permet ça, mais il n'existe peut-etre pas sous VBA. Par contre, tu peux user et abuser de la fonction IsNumeric qui te dira si la saisie est correcte.(j'ai pas mieux)

Reply

Marsh Posté le 02-07-2004 à 16:06:33    

Le controle TextBox laisse libre la saisie
A ta charge de contrôler celle-ci sur l'appui de touches (événements KeyUp, KeyDown, KeyPress) ou sur validation de la zone (événement Validate, Change, LostFocus).
Ca ne doit pas être compliqué avec IsNull et IsNumeric

Reply

Marsh Posté le 02-07-2004 à 16:17:56    

j'ai VB6 ,je vais essayer je dirai quoi merci

Reply

Marsh Posté le 02-07-2004 à 17:04:11    

sur l'évenement keypress, si keyascii est différent d'un chiffre ou de retour arrière,keyascii=0
Regarde dans l'aide y a un exemple de ske tu veux faire :)
( si tu trouves pas dis le jte copierai le code que j'utilise pour ça )

Reply

Marsh Posté le 02-07-2004 à 17:04:11   

Reply

Marsh Posté le 05-07-2004 à 19:48:14    

Glod 2 a écrit :

sur l'évenement keypress, si keyascii est différent d'un chiffre ou de retour arrière,keyascii=0
Regarde dans l'aide y a un exemple de ske tu veux faire :)
( si tu trouves pas dis le jte copierai le code que j'utilise pour ça )


 si tu l'envoyer ce serait cool merci


---------------
http://dreaminformatique.com le reve informatique
Reply

Marsh Posté le 06-07-2004 à 07:23:07    

ok jferai ça ce soir :o
M'enfin c tout bête bizarre que t'aies pas vu dans l'aide :??:

Reply

Marsh Posté le 07-07-2004 à 18:53:39    

c'est bon j'ai trouvé !
merci pour ton aide

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed