[VBA] Forcer format textbox
Résolu/Fermé
Skeo
-
28 avril 2010 à 08:49
Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 - 28 avril 2010 à 12:14
Polux31 Messages postés 6917 Date d'inscription mardi 25 septembre 2007 Statut Membre Dernière intervention 1 novembre 2016 - 28 avril 2010 à 12:14
A voir également:
- [VBA] Forcer format textbox
- Forcer demarrage pc - Guide
- Format epub - Guide
- Forcer suppression fichier - Guide
- Forcer la reinitialisation pc - Guide
- Telecharger format factory - Télécharger - Conversion & Codecs
1 réponse
zebulon2503
Messages postés
1228
Date d'inscription
jeudi 17 avril 2008
Statut
Membre
Dernière intervention
11 février 2016
110
Modifié par zebulon2503 le 28/04/2010 à 09:18
Modifié par zebulon2503 le 28/04/2010 à 09:18
Salut
Tu peux faire un test après la saisie :
Les cons peuvent avoir l'air intelligent à première vue... Heureusement pour eux que la vitesse de la lumière est supérieure à celle du son.
Tu peux faire un test après la saisie :
If valeur >53 or valeur<1 then msgbox("mauvaise saisie") Action à faire end if
Les cons peuvent avoir l'air intelligent à première vue... Heureusement pour eux que la vitesse de la lumière est supérieure à celle du son.
28 avril 2010 à 10:45
En fait ça me générait une erreur quand je ne saisissais pas une valeur numérique (ce que j'étais sensé faire) mais j'ai résolu le problème car la valeur tapé dans la textbox était récupérée dans une variable de type Long mais je l'ai assé en Variant de manière à ce que ça ne plante plus... Et additionné à ton idée l'utilisateur est prévenu qu'il doit saisir une valeur numérique.
Merci!
28 avril 2010 à 10:54
Oula ... il vaut mieux typer les variables correctement. Variant n'est pas un bon palliatif à ton problème. Tu surcharges la mémoire inutilement et tu ralentis le programme.
La bonne méthode est de tester le contenu de la textbox:
;o)
Modifié par Msgbox "blablabla" le 28/04/2010 à 11:58
J'avais également trouvé ceci:
On Erreor resume next
If Not IsNumeric(Right(Textbox1, 1)) Then
Msgbox "blablabla"
TextBox1 = Left(Textbox1, Len(TextBox1) - 1)
End If
Mais ça marquait deux fois le message d'erreur...
Mais ton code est mieux car il répond mieux à mes besoin en forçant une valeur numérique et en définnissant une plage de saisi.
28 avril 2010 à 11:57
L'erreur est "Sub ou fonction non définie".
Modifié par Polux31 le 28/04/2010 à 12:05
Utilisé tel quel ne sert à rien et est même très dangereux, puisqu'il masque un dysfonctionnement.
On Error Resume Next intercepte une erreur et demande à l'application de continuer.
Il faut gérer cette erreur, de façon "propre". On Error retourne le numéro de l'erreur s'il y en a une ou zéro s'il n'y en a pas:
Par exemple :
Ou bien, si on connait le numéro de l'erreur :
;o)