Contrôle de saisie

Résolu
cs_filio Messages postés 18 Date d'inscription lundi 30 avril 2007 Statut Membre Dernière intervention 21 mai 2007 - 3 mai 2007 à 13:36
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 - 3 mai 2007 à 14:32
Bonjour,

Lors de l'affichage d'un inputbox, comment vérifier que l'utilisateur entre bien des nombres(-> integer)?

Marci

4 réponses

jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
3 mai 2007 à 13:41
Salut,
Essaies ceci
Dim Ret As String
While (Not IsNumeric(Ret)) Or Ret = vbNullString
   Ret = InputBox("ENTRER un chiffre")
Wend, ----
[code.aspx?ID=41455 By Renfield]

@+: Ju£i?n
Pensez: Réponse acceptée
3
Molenn Messages postés 797 Date d'inscription mardi 7 juin 2005 Statut Membre Dernière intervention 23 février 2011 7
3 mai 2007 à 13:43
A la validation, tu peux vérifier que le résultat retourné est numérique ou au moins compatible avec un calcul numérique avec la fonction : IsNumeric(Toto).

Ou alors, tu peux vérifier le code Ascii des caractères saisis.

Molenn
3
cs_filio Messages postés 18 Date d'inscription lundi 30 avril 2007 Statut Membre Dernière intervention 21 mai 2007
3 mai 2007 à 13:49
Merci à vous 2!
0
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
3 mai 2007 à 14:32
Just for fun (à la saisie ou à la validation)

Private Sub Command1_Click()
  toto = "1234.12"
  MsgBox IIf(IsNumeric(toto), "bon", "pas bon")
  MsgBox "et pourtant : val(toto) * 2 = " & Val(toto) * 2 & "alors que 1237,12 * 2 conduirait à une erreur" & vbCrLf & "la preuve ?"
  MsgBox Val("1234,12") * 2 & " et non à " & Val(toto) * 2 & " comme il se doit ! "
End Sub

A méditer, donc....
0
Rejoignez-nous