Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Vérification d'une donnée dans TextBox

7 réponses
Avatar
RomainCHY
Bonjour à tous,
Je souhaite que mon programme vérifie, lorsque je clique sur BttValider, que
la donnée entrée dans TextBox1 est bien un nombre (et non pas des lettres) et
que ce nombre n'est pas supérieur à 100.
Si l'utilisateur a rentré une lettre, il faudrait MsgBox("Entrer un nombre")
Si l'utilisateur a rentré un nombre sup à 100, MsgBox("Entrer un nombre inf
à 100")

Merci d'avance (une fois de plus)

7 réponses

Avatar
hasco
If Val(TextBox1)<=0 or Val(TextBox1)>100 then
MsgBox "Entrez un nombre inferieur à 100"
end if



Bonjour à tous,
Je souhaite que mon programme vérifie, lorsque je clique sur BttValider, que
la donnée entrée dans TextBox1 est bien un nombre (et non pas des lettres) et
que ce nombre n'est pas supérieur à 100.
Si l'utilisateur a rentré une lettre, il faudrait MsgBox("Entrer un nombre")
Si l'utilisateur a rentré un nombre sup à 100, MsgBox("Entrer un nombre inf
à 100")

Merci d'avance (une fois de plus)


Avatar
RomainCHY
Hasco,
Avec cette ligne de programmation, si j'entre des lettres dans la TextBox,
une erreur apparaît.

Comment faire pour que le message s'affiche également si on entre des
lettres (par erreur)?
Avatar
MichDenis
Fichier exemple : Comment contrôler ce que l'usager peut saisir dans un textbox
pour ne rentrer que des "chiffres" et comment les additionner le cas échéant.
N'oublie pas de regarder dans le module1, c'est là où est la fonction...

http://cjoint.com/?eznJBDpoUT


"RomainCHY" <romain.charny@@gmail.com> a écrit dans le message de news:

Bonjour à tous,
Je souhaite que mon programme vérifie, lorsque je clique sur BttValider, que
la donnée entrée dans TextBox1 est bien un nombre (et non pas des lettres) et
que ce nombre n'est pas supérieur à 100.
Si l'utilisateur a rentré une lettre, il faudrait MsgBox("Entrer un nombre")
Si l'utilisateur a rentré un nombre sup à 100, MsgBox("Entrer un nombre inf
à 100")

Merci d'avance (une fois de plus)
Avatar
FFO
Salut Hasco
Rajoutes au code en tout début l'instruction suivante :
If VarType(TextBox1) = vbString Then
MsgBox "Entrez un nombre"
Exit Sub
End If
Ce qui donne au final :
If VarType(TextBox1) = vbString Then
MsgBox "Entrez un nombre"
Exit Sub
End If
If Val(TextBox1)<=0 or Val(TextBox1)>100 then
MsgBox "Entrez un nombre inferieur à 100"
end if

C'est y mieux ainsi ????


Hasco,
Avec cette ligne de programmation, si j'entre des lettres dans la TextBox,
une erreur apparaît.

Comment faire pour que le message s'affiche également si on entre des
lettres (par erreur)?




Avatar
RomainCHY
FFO,
Non, ça ne marche pas. Je suis débutant...
Avec tes lignes de programmations, peu importe ce que je met dans la
TextBox, il me renvoie la MsgBox du vbstring.
Avatar
FFO
Tu peux inscrire dans une cellule de ton choix (inutilisée de préférence) la
valeur saisie et utiliser mon code pour l'analyser puis terminer en nettoyant
cette cellule
De cette manière :
Range("A1") = TextBox1
If VarType(Range("A1")) = vbString Then
MsgBox "Entrez un nombre"
Range("A1").Clear
Exit Sub
End If
If Val(TextBox1) <= 0 Or Val(TextBox1) > 100 Then
MsgBox "Entrez un nombre inferieur à 100"
End If
Range("A1").Clear

Je l'ai testé et celà fonctionne
J'espère pour toi aussi
Dis moi !!!!



FFO,
Non, ça ne marche pas. Je suis débutant...
Avec tes lignes de programmations, peu importe ce que je met dans la
TextBox, il me renvoie la MsgBox du vbstring.




Avatar
JB
Bonjour,

If Not IsNumeric(Me.TextBox1) Then
MsgBox "Saisir du numérique"
Me.TextBox1 = ""
Me.TextBox1.SetFocus
Else
If CDbl(Me.TextBox1) > 100 Then
MsgBox "saisir un nb <100"
Me.TextBox1.SetFocus
End If
End If

Contrôle de numérique dès la saisie.

Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If InStr("0123456789,", Chr(KeyAscii)) = 0 Then
KeyAscii = 0
Beep
End If
End Sub

Cordialement JB



On 25 avr, 12:18, RomainCHY <romain.charny@@gmail.com> wrote:
Bonjour à tous,
Je souhaite que mon programme vérifie, lorsque je clique sur BttValider , que
la donnée entrée dans TextBox1 est bien un nombre (et non pas des let tres) et
que ce nombre n'est pas supérieur à 100.
Si l'utilisateur a rentré une lettre, il faudrait MsgBox("Entrer un nom bre")
Si l'utilisateur a rentré un nombre sup à 100, MsgBox("Entrer un nomb re inf
à 100")

Merci d'avance (une fois de plus)