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

pb de mise en forme dans une TextBox

6 réponses
Avatar
Philou36
Bonjour,
Toujours en apprentissage dans le monde merveilleux des formulaires, je suis
confronté à un problème de mise ne forme. Je voudrais juste que la somme
soit mis en forme avec deux chiffres apres la virgule.

Private Sub TxtIM1_Change()
'If CboCalcTraitement1.Value = "D'après un Montant" Then
Me.TxtIM1.Value = Format(Me.TxtIM1.Value, "# ##,##")
'End If
End Sub

Mais ca ne marche pas !

Un grand merci à vous de votre précieuse aide.

Bonne journée

Philippe

6 réponses

Avatar
eneric
Bonjour,
plutot du genre
.Numberformat = "# ##,##"

Toujours en apprentissage dans le monde merveilleux des formulaires, je suis
confronté à un problème de mise ne forme. Je voudrais juste que la somme soit
mis en forme avec deux chiffres apres la virgule.

Private Sub TxtIM1_Change()
'If CboCalcTraitement1.Value = "D'après un Montant" Then
Me.TxtIM1.Value = Format(Me.TxtIM1.Value, "# ##,##")
'End If
End Sub

Mais ca ne marche pas !

Un grand merci à vous de votre précieuse aide.

Bonne journée

Philippe



--
eneric
Avatar
Daniel.C
Bonjour.
Essaie plutôt :

Private Sub txtIM1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Me.txtIM1.Value = Format(Me.txtIM1.Value, "#,###.##")
End Sub

NB. J'ai pris l'évènement "exit" mais tu choisis celui qui te convient.

Cordialement.
Daniel

Bonjour,
Toujours en apprentissage dans le monde merveilleux des formulaires, je suis
confronté à un problème de mise ne forme. Je voudrais juste que la somme soit
mis en forme avec deux chiffres apres la virgule.

Private Sub TxtIM1_Change()
'If CboCalcTraitement1.Value = "D'après un Montant" Then
Me.TxtIM1.Value = Format(Me.TxtIM1.Value, "# ##,##")
'End If
End Sub

Mais ca ne marche pas !

Un grand merci à vous de votre précieuse aide.

Bonne journée

Philippe


Avatar
Calou
On 20 oct, 10:38, Daniel.C wrote:
Bonjour.
Essaie plutôt :

Private Sub txtIM1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Me.txtIM1.Value = Format(Me.txtIM1.Value, "#,###.##")
End Sub

NB. J'ai pris l'évènement "exit" mais tu choisis celui qui te convien t.

Cordialement.
Daniel



> Bonjour,
> Toujours en apprentissage dans le monde merveilleux des formulaires, je suis
> confronté à un problème de mise ne forme. Je voudrais juste que l a somme soit
> mis en forme avec deux chiffres apres la virgule.

> Private Sub TxtIM1_Change()
> 'If CboCalcTraitement1.Value = "D'après un Montant" Then
>     Me.TxtIM1.Value = Format(Me.TxtIM1.Value, "# ##,##")
> 'End If
> End Sub

> Mais ca ne marche pas !

> Un grand merci à vous de votre précieuse aide.

> Bonne journée

> Philippe- Masquer le texte des messages précédents -

- Afficher le texte des messages précédents -



Bonjour,
Un grand merci pour tous ces précieux conseils. Je testerai tout cela
chez moi ce soir.
Tres bonne journée à vous.
Philippe
Avatar
Philou36
Bonjour les amis,
J'ai essayé vos deux solutions mais je ne sais ce qui ne marche pas !

Private Sub TxtMontant_Change()
Me.TxtIM1.Value = Format(Me.TxtIM1.Value, "#,###.##")
End Sub

Private Sub TxtMontant_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Me.TxtIM1.Value = Format(Me.TxtIM1.Value, "#,###.##")
End Sub

pour ce qui est de .Numberformat = "# ##,##"
je ne sais pas ou le mettre ! je vous l'avez bien dit que j'etais nul

Bonne journée
Philippe


"Daniel.C" a écrit dans le message de news:

Bonjour.
Essaie plutôt :

Private Sub txtIM1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Me.txtIM1.Value = Format(Me.txtIM1.Value, "#,###.##")
End Sub

NB. J'ai pris l'évènement "exit" mais tu choisis celui qui te convient.

Cordialement.
Daniel

Bonjour,
Toujours en apprentissage dans le monde merveilleux des formulaires, je
suis confronté à un problème de mise ne forme. Je voudrais juste que la
somme soit mis en forme avec deux chiffres apres la virgule.

Private Sub TxtIM1_Change()
'If CboCalcTraitement1.Value = "D'après un Montant" Then
Me.TxtIM1.Value = Format(Me.TxtIM1.Value, "# ##,##")
'End If
End Sub

Mais ca ne marche pas !

Un grand merci à vous de votre précieuse aide.

Bonne journée

Philippe







Avatar
isabelle
bonjour Philippe,

essai comme ça,

Private Sub TxtMontant_Change()
Me.TxtIM1 = Format(Me.TxtIM1, "#,###.##")
End Sub


isabelle


Philou36 a écrit :
Bonjour les amis,
J'ai essayé vos deux solutions mais je ne sais ce qui ne marche pas !

Private Sub TxtMontant_Change()
Me.TxtIM1.Value = Format(Me.TxtIM1.Value, "#,###.##")
End Sub

Private Sub TxtMontant_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Me.TxtIM1.Value = Format(Me.TxtIM1.Value, "#,###.##")
End Sub

pour ce qui est de .Numberformat = "# ##,##"
je ne sais pas ou le mettre ! je vous l'avez bien dit que j'etais nul

Bonne journée
Philippe


"Daniel.C" a écrit dans le message de news:


Bonjour.
Essaie plutôt :

Private Sub txtIM1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Me.txtIM1.Value = Format(Me.txtIM1.Value, "#,###.##")
End Sub

NB. J'ai pris l'évènement "exit" mais tu choisis celui qui te convient.

Cordialement.
Daniel


Bonjour,
Toujours en apprentissage dans le monde merveilleux des formulaires, je
suis confronté à un problème de mise ne forme. Je voudrais juste que la
somme soit mis en forme avec deux chiffres apres la virgule.

Private Sub TxtIM1_Change()
'If CboCalcTraitement1.Value = "D'après un Montant" Then
Me.TxtIM1.Value = Format(Me.TxtIM1.Value, "# ##,##")
'End If
End Sub

Mais ca ne marche pas !

Un grand merci à vous de votre précieuse aide.

Bonne journée

Philippe












Avatar
FS
Bonjour,

Essaye ce format :

TxtIM1.Value = Format(TxtIM1.Value, "# ###.00")

Utiliser l'événement Change n'est sans doute pas adapté (chaque saisie
d'un chiffre provoque la mise en forme). Exit convient probablement
mieux, il est déclenché dès que le focus passe à un autre objet du
formulaire (encore faut-il que ce soit le cas).

FS
--
Frédéric SIGONNEAU
Modules et modèles pour Excel :
http://frederic.sigonneau.free.fr/

Philou36 a écrit :
Bonjour,
Toujours en apprentissage dans le monde merveilleux des formulaires, je suis
confronté à un problème de mise ne forme. Je voudrais juste que la somme
soit mis en forme avec deux chiffres apres la virgule.

Private Sub TxtIM1_Change()
'If CboCalcTraitement1.Value = "D'après un Montant" Then
Me.TxtIM1.Value = Format(Me.TxtIM1.Value, "# ##,##")
'End If
End Sub

Mais ca ne marche pas !

Un grand merci à vous de votre précieuse aide.

Bonne journée

Philippe