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

probleme de recuperation de la longueur d'une chaine

2 réponses
Avatar
c.barbier
Bonjour,

Je souhaite verifiee que l'utilisateur saisi 1 ou 2 caracteres dans une
fenetre inputbox. Pour cela, je verifie a l'aide de la fonction len la
longueur de la chaine saisie. Mais je ne comprends pas pourquoi lorsque
l'utilisateur ne saisi rien dans la boite de dialogue inputbox, la
longueur de la chaine saisie est de 2? Alors que si l'utilisateur saisi
un seul chiffre dans la boite de dialogue, la longueur de la chaine est
aussi de 2.
Le code est ci-dessous
Merci beaucoup,

Function Saisie_Mois_Souhaite() As Integer
'Saisie par l'utilisateur du mois dont il souhaite connaitre la valeur
du stock
Dim longueur As Integer

Saisie_Mois_Souhaite = Val(InputBox("Saisissez le mois pour laquelle
vous souhaitez connaitre la valeur du stock"))
longueur = Len(Str(Saisie_Mois_Souhaite))
Debug.Print longueur
'Verification que le mois saisi comporte bien que 1 ou 2 chifrres
While ((longueur <> 3) And (longueur <> 2))
MsgBox "Vous devez saisir un mois a 1 ou 2 chiffres", vbExclamation
Saisie_Mois_Souhaite = Val(InputBox("Saisissez le mois pour
laquelle vous souhaitez connaitre la valeur du stock"))
longueur = Len(Str(Saisie_Mois_Souhaite))
Wend


End Function

2 réponses

Avatar
Raymond [mvp]
Bonjour.

fais ta fonction comme ceci, pour tester la valeur du mois 1 à 12.

Function Saisie_Mois_Souhaite() As Integer
Do Until Saisie_Mois_Souhaite > 0 And Saisie_Mois_Souhaite <= 12
Saisie_Mois_Souhaite = Val(InputBox("Saisissez
...................."))
Loop
End Function


--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://OfficeSystem.Access.free.fr/runtime/
http://users.skynet.be/mpfa/ pour débuter sur le forum


a écrit dans le message de news:

Bonjour,

Je souhaite verifiee que l'utilisateur saisi 1 ou 2 caracteres dans une
fenetre inputbox. Pour cela, je verifie a l'aide de la fonction len la
longueur de la chaine saisie. Mais je ne comprends pas pourquoi lorsque
l'utilisateur ne saisi rien dans la boite de dialogue inputbox, la
longueur de la chaine saisie est de 2? Alors que si l'utilisateur saisi
un seul chiffre dans la boite de dialogue, la longueur de la chaine est
aussi de 2.
Le code est ci-dessous
Merci beaucoup,

Function Saisie_Mois_Souhaite() As Integer
'Saisie par l'utilisateur du mois dont il souhaite connaitre la valeur
du stock
Dim longueur As Integer

Saisie_Mois_Souhaite = Val(InputBox("Saisissez le mois pour laquelle
vous souhaitez connaitre la valeur du stock"))
longueur = Len(Str(Saisie_Mois_Souhaite))
Debug.Print longueur
'Verification que le mois saisi comporte bien que 1 ou 2 chifrres
While ((longueur <> 3) And (longueur <> 2))
MsgBox "Vous devez saisir un mois a 1 ou 2 chiffres", vbExclamation
Saisie_Mois_Souhaite = Val(InputBox("Saisissez le mois pour
laquelle vous souhaitez connaitre la valeur du stock"))
longueur = Len(Str(Saisie_Mois_Souhaite))
Wend


End Function



Avatar
c.barbier
C'est une tres bonne idee. Merci beaucoup,