Bonjour, je viens chercher un peu d'aide pour un petit soucis
Je cherche a ouvrir une fenêtre du type MsgBox "Vous ne devez saisir que du texte" quand l'utilisateur rentre du texte et des chiffres en même temps dans une TextBox...
J'arrive a retourner l'erreur et afficher l'erreur quand les valeurs numériques sont rentrées seules ("0125") ou au début de la chaine ('"14mois"), mais je n'y arrive pas quand les valeurs numériques sont écrites au milieu ou à la fin de la chaine par exemple : "lok01" ou "lo12erd"
Il me faudrait surement une fonction qui parcours la chaine de caractères et vérifie qu'il n'y a pas de valeurs numérique (avec IsNumeric) ou que des valeur alphabétique mais je ne trouve pas.
Merci de votre aide, en espérant avoir été clair dans mon explication.
A voir également:
Cherche un renvoi d'erreur quand valeurs numérique et caractères saisie en même
Salut;
je t'exscuse car tu debute en VB mais est ce que tu a vue l'instruction Exit For ???
For i = 1 To Len(a)
If IsNumeric( Right( Left(a,i) ,1) ) Then
MsgBox "err"
Exit For
End If
Next i
Cette instruction permet de sortir de la boucle quand le premier chiffre apparaît
Et dans ce cas il envoi un message d’erreur et sort de la boucle donc plus d’autre message
salut;
solution possible, et voici une autre:
For i = 1 To Len(a)
If IsNumeric( Right( Left(a, i) ,1) ) Then
MsgBox "err"
Exit For
End If
Next i
comme ca tu va tester chaque caractere de ta chaine,
left("caractere",3) = "car"
right("car",1) = "r"
Je ne sais pas empêcher la saisie de valeurs numériques, je débute en VB
Moussaouiaaziz j'ai déjà plus ou mois essayé cette solution et dans ce cas là cela renvoi plusieurs fenêtres msgbox si l'utilisateur rentre plus d'un chiffre? Car je voudrais une seule fenêtre qui signale d'erreur si c'est possible
A non en effet j'avais pas fait attention à ce petit détails, j'ai essayé rapidement cela fonctionne.
D'accords donc cela arrête le compteur dès qu'il trouve une erreur, bon j'étais pas trop loin il me manquais juste le "Exit For" mais bon quand on connais pas on peu chercher un moment...
Un grand Merci à vous 2
P.S: Il faut que j'accepte ta réponse pour mettre le sujet en résolu?
Je suis du même avis que PCPT(salut ), autant empêcher dessuite la saisie de numérique, au lieu de laisser l'utilisateur saisir et une fois qu'il à saisie de lui dire : ah non ! vous ne pouvez pas saisir de numérique !! veuillez recommencer !
C'est pas dit....Si tu as par exemple un Label et un TextBox :
Nom(label) Zone de saisie(TextBox)
Tu vois bien que dans le textbox, tu ne va pas entrer de chiffre pour un nom....donc empêcher la saisie directement sans "informé" l'utilisateur...car l'information que l'utilisateur a, et le descriptif du label(nom), il sait par defaut, qu'il ne devrat saisir que des lettres ^^..enfin...c'est mon avis