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

Saisie de caractères limitée dans des textbox

2 réponses
Avatar
Pierre93
Bonjour au Forum !

Je viens vers vous pour que vous puissiez m'aider à résoudre un petit
problème !

J'ai dans un userform plusieurs textbox dans lesquels je saisie des valeurs
limitées à 5 caractères (du type horaire "08.30").
Voici le code dans un de ces textbox :
Private Sub TextBox1_Change()
TextBox1.MaxLength = 5
TextBox1.AutoTab = True
TextBox1 = Format(TextBox1, "00.00")
End Sub

Etant donné que le "." compte pour un caractère, si je saisie par exemple
"8.301", le textbox affiche "8.301" (logique !).
Seulement cela ne me convient pas puisque le format imposé doit être du
style "00.00" soit 5 caractères maxi.
Le résultat affiché sera soit par exemple "08.30" si je saisie "8.30" ou
"11.00" si je saisie "11".

Suis-je assez clair ?

Je l'espère !

Une autre question, quelle est la différence entre "TextBox1.value" et
"Me.TextBox1" ???

Je vous remercie.

Cdt

Pierrot du 93

2 réponses

Avatar
JB
Bonjour,

Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
Me.TextBox1 = Replace(Me.TextBox1, ".", ":")
If Not Me.TextBox1 Like "*:*" Then Me.TextBox1 = Me.TextBox1 & ":00"
End Sub

http://cjoint.com/?cDhInkMk0w

JB
http://boisgontierjacques.free.fr


On 29 fév, 07:17, "Pierre93" wrote:
Bonjour au Forum !

Je viens vers vous pour que vous puissiez m'aider à résoudre un petit
problème !

J'ai dans un userform plusieurs textbox dans lesquels je saisie des valeur s
limitées à 5 caractères (du type horaire "08.30").
Voici le code dans un de ces textbox :
Private Sub TextBox1_Change()
TextBox1.MaxLength = 5
TextBox1.AutoTab = True
TextBox1 = Format(TextBox1, "00.00")
End Sub

Etant donné que le "." compte pour un caractère, si je saisie par exem ple
"8.301", le textbox affiche "8.301" (logique !).
Seulement cela ne me convient pas puisque le format imposé doit être d u
style "00.00" soit 5 caractères maxi.
Le résultat affiché sera soit par exemple "08.30" si je saisie "8.30" ou
"11.00" si je saisie "11".

Suis-je assez clair ?

Je l'espère !

Une autre question, quelle est la différence entre "TextBox1.value" et
"Me.TextBox1" ???

Je vous remercie.

Cdt

Pierrot du 93


Avatar
Pierre93
Merci JB

"JB" a écrit dans le message de news:

Bonjour,

Private Sub TextBox1_BeforeUpdate(ByVal Cancel As
MSForms.ReturnBoolean)
Me.TextBox1 = Replace(Me.TextBox1, ".", ":")
If Not Me.TextBox1 Like "*:*" Then Me.TextBox1 = Me.TextBox1 & ":00"
End Sub

http://cjoint.com/?cDhInkMk0w

JB
http://boisgontierjacques.free.fr


On 29 fév, 07:17, "Pierre93" wrote:
Bonjour au Forum !

Je viens vers vous pour que vous puissiez m'aider à résoudre un petit
problème !

J'ai dans un userform plusieurs textbox dans lesquels je saisie des
valeurs
limitées à 5 caractères (du type horaire "08.30").
Voici le code dans un de ces textbox :
Private Sub TextBox1_Change()
TextBox1.MaxLength = 5
TextBox1.AutoTab = True
TextBox1 = Format(TextBox1, "00.00")
End Sub

Etant donné que le "." compte pour un caractère, si je saisie par exemple
"8.301", le textbox affiche "8.301" (logique !).
Seulement cela ne me convient pas puisque le format imposé doit être du
style "00.00" soit 5 caractères maxi.
Le résultat affiché sera soit par exemple "08.30" si je saisie "8.30" ou
"11.00" si je saisie "11".

Suis-je assez clair ?

Je l'espère !

Une autre question, quelle est la différence entre "TextBox1.value" et
"Me.TextBox1" ???

Je vous remercie.

Cdt

Pierrot du 93