OVH Cloud OVH Cloud

contrôle de saisie

3 réponses
Avatar
EliotNaiss
bonjour,
dans un userform, j'ai une zone de texte qui doit contenir du texte
seulement.
j'utilise la formule dans la sub txtPrenom_Change()
If IsNumeric(txtPrenom.Value) Then SendKeys "{BACKSPACE}"
Mais voilà, si je saisi en premier un caractère texte, rien ne m'empêche de
saisir un numérique ensuite !...
Comment vérifier toutes les frappes pour éviter cela ??
Casse-tête ??
Merci bcp.
Cordialement.
Eliot.

3 réponses

Avatar
EliotNaiss
RE,
j'ai trouvé en écrivant ceci :
If IsNumeric(Right(txtPrenom.Value, 1)) Then SendKeys "{BACKSPACE}"
je suppose qu'il n'y pas mieux ?
Eliot
"EliotNaiss" a écrit dans le message de news:

bonjour,
dans un userform, j'ai une zone de texte qui doit contenir du texte
seulement.
j'utilise la formule dans la sub txtPrenom_Change()
If IsNumeric(txtPrenom.Value) Then SendKeys "{BACKSPACE}"
Mais voilà, si je saisi en premier un caractère texte, rien ne m'empêche
de saisir un numérique ensuite !...
Comment vérifier toutes les frappes pour éviter cela ??
Casse-tête ??
Merci bcp.
Cordialement.
Eliot.




Avatar
Jacques93
Bjour EliotNaiss,

Essaie :

Private Sub txtPrenom_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
Select Case KeyAscii
Case 48 To 57 ' 0 à 9
KeyAscii = 0
Beep
End Select
End Sub

bonjour,
dans un userform, j'ai une zone de texte qui doit contenir du texte
seulement.
j'utilise la formule dans la sub txtPrenom_Change()
If IsNumeric(txtPrenom.Value) Then SendKeys "{BACKSPACE}"
Mais voilà, si je saisi en premier un caractère texte, rien ne m'empêche de
saisir un numérique ensuite !...
Comment vérifier toutes les frappes pour éviter cela ??
Casse-tête ??
Merci bcp.
Cordialement.
Eliot.





--
Cordialement,

Jacques.

Avatar
EliotNaiss
bsoir Jacques93,
cette soluce est bonne aussi, je vais voir.
merci
Eliot
"Jacques93" a écrit dans le message de news:

Bjour EliotNaiss,

Essaie :

Private Sub txtPrenom_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
Select Case KeyAscii
Case 48 To 57 ' 0 à 9
KeyAscii = 0
Beep
End Select
End Sub

bonjour,
dans un userform, j'ai une zone de texte qui doit contenir du texte
seulement.
j'utilise la formule dans la sub txtPrenom_Change()
If IsNumeric(txtPrenom.Value) Then SendKeys "{BACKSPACE}"
Mais voilà, si je saisi en premier un caractère texte, rien ne m'empêche
de saisir un numérique ensuite !...
Comment vérifier toutes les frappes pour éviter cela ??
Casse-tête ??
Merci bcp.
Cordialement.
Eliot.





--
Cordialement,

Jacques.