Controle d'une saisie dans textbox

Bonjour, j'ai juste une petite question , je souhaiterai que ma textbox ne contienne pas les caractères ;

- (tiret) ou / (slatch) ou un espace double , alors j'ai ecris les instructions suivantes

Private Sub CommandButton1_Click()
Do
TextBox1.Value = ""
Loop While InStr(TextBox1.Value, "-") > 0 Or InStr(TextBox1.Value, "  ") > 0 Or InStr(TextBox1.Value, "/") > 0 Or InStr(TextBox1.Value,"/")> 0
MsgBox " la suite"  '--->si textbox bien remplie
Unload Me

End Sub

seulement celle ci ne semble pas fonctionner et meme en saisissant les caractères interdits je ne reboucle pas.

Pourriez vous m'indiquer ce qui ne va pas dans mon code ?

Merci

Bonjour,

Si tu supprimes le contenu du TextBox au départ (ta première commande après Do), il n'y a plus rien à chercher, et la boucle s'arrête normalement au premier tour.

Salut !

ce que je voulais ecrire c'est " vider la textbox tand que la condition n'est pas remplie , je ne vois pas comment ecrire cela autrement

merci.


J'ai essayé ceci mais en vain :

Private Sub CommandButton1_Click()
Do While InStr(1, TextBox1.Text, "A", vbTextCompare) > 0
TextBox1 = ""
Loop
MsgBox "la suite"  'si textbox bien rempli
Unload Me
End Sub

Il y a 2 problèmes :

1) exprimer ce que tu veux obtenir selon la syntaxe VBA

2) exprimer tout simplement de façon logique ce que tu veux obtenir.

Commençons par le 2) qui vient en premier dans la définition de ce qu'on veut coder.

Tu veux que la chaîne saisie ne contienne pas certains caractères.

Si tu la supprimes dès lors qu'elle contient un caractère interdit, un simple test est à faire :

s'il y a un caractère interdit, on supprime (et on recommence)

Si tu veux éliminer les caractères interdits avant de valider, il faut un test assorti d'une commande d'élimination desdits caractères, assorti de tests sucessifs pour vérifier qu'on a éliminé tous les caractères interdits, et qu'il reste quelque chose à valider (donc peut-être une boucle pour faire le test jusqu'à ce que tous les caractères interdit soient éliminés)

Donc : premier choix à faire de ce qu'on veut faire, avant même de l'exprimer logiquement.

Rechercher des sujets similaires à "controle saisie textbox"