Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Peut on exiger le type de valeur a saisir dans "InputBox"

J

Jare

Guest
Peut on m'aider !

Dans une macro, à la boite de saisie "InputBox" peut on exiger une saisie numérique ou texte, exemple: si l'on saisie une valeur texte alors que l'on souhaite une valeur numérique, cela soit signalé par un message d'erreur ou tout simplement la boite ne prend pas ma saisie !

Merci
 
T

Ti

Guest
utilise Application.InputBox, en précisant le type attendu.
Exemple, pour avoir un nombre :

Sub Test()
Dim Valeur As Variant
Dim Message As String, Titre As String
Message = "Entrez une valeur numérique"
Titre = "Saisie d'une valeur"
Valeur = Application.InputBox(prompt:=Message, Title:=Titre, Type:=1)
End Sub

voici les valeurs attendues pour Type (cf. l'aide d'InputBox)
0 Une formule.
1 Un nombre.
2 Texte (une chaîne).
4 Une valeur logique (True ou False).
8 Une référence de cellule, sous la forme d'un objet Range.
16 Une valeur d'erreur, telle que #N/A.
64 Un tableau de valeurs.
 
J

Jare

Guest
Ti

Merci inpec, rendre un nombre obligatoire c'est nykel
mais sa marche pas pour du texte !! (je suis pas un pro!!).
si tu me redonne la macro pour du texte sa serai simpa.
merci a+ )
 
T

Ti

Guest
Sub EntreeChaine()
Dim Valeur As Variant
Dim Message As String, Titre As String
Message = "Entrez une valeur numérique"
Titre = "Saisie d'une valeur"
Valeur = Application.InputBox(prompt:=Message, Title:=Titre, Type:=2)
End Sub

Avec cette macro tous les types de valeurs seront acceptés (chaine ou nombre) puisqu'il n'y a guère de moyen de tester si ce qui a été tapé est ou n'est pas une chaîne de caractères. Ainsi une valeur comme 123.5 sera vue comme la chaîne "123.5".
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…