OVH Cloud OVH Cloud

Dé.....formater...

4 réponses
Avatar
Denys
Bonjour à tous,

Sur un textbox de mon userform, j'utilise l'instruction suivante:

If IsNumeric(TextBox17) = True Then
Me.TextBox17 = Format(Me.TextBox17, "$# ##0.00 ")
End If
Cette instruction survient immédiatement après que l'usager eut iinscrit un
montant dans le textbox au-dessus du Textbox17. Une opération mathématique
s'ensuit et le résultat apparait dans le textbox17 comme suit : $2 171.11 par
exemple.

Seulement, dès que l'usager clique OK le résultat apparaissant dans le
textbox 17 doit subir un autre calcul, et cela, Excel ne le prends pas.

Il faudrait donc, je crois, "déformatiser" $2 171.11 pour que le calcul
puisse se faire.

Z'auriez une petite idée comment? Ou est-ce carrément une mauvaise idée de
formater le textbox17 ?

La raison que je voulais le faire c'est purement esthétique, parce que le
résultat donnait 2171.1124455

Ca fait pas très joli...

Merci pour votre temps

Denys

4 réponses

Avatar
Daniel
Bonjour.
Me.TextBox17 = Me.TextBox17.NumberFormat = "$#,##0.00"
devrait le faire.
Cordialement.
Daniel
"Denys" a écrit dans le message de news:

Bonjour à tous,

Sur un textbox de mon userform, j'utilise l'instruction suivante:

If IsNumeric(TextBox17) = True Then
Me.TextBox17 = Format(Me.TextBox17, "$# ##0.00 ")
End If
Cette instruction survient immédiatement après que l'usager eut iinscrit
un
montant dans le textbox au-dessus du Textbox17. Une opération mathématique
s'ensuit et le résultat apparait dans le textbox17 comme suit : $2 171.11
par
exemple.

Seulement, dès que l'usager clique OK le résultat apparaissant dans le
textbox 17 doit subir un autre calcul, et cela, Excel ne le prends pas.

Il faudrait donc, je crois, "déformatiser" $2 171.11 pour que le calcul
puisse se faire.

Z'auriez une petite idée comment? Ou est-ce carrément une mauvaise idée de
formater le textbox17 ?

La raison que je voulais le faire c'est purement esthétique, parce que le
résultat donnait 2171.1124455

Ca fait pas très joli...

Merci pour votre temps

Denys




Avatar
Denys
Bonjour Daniel,

Merci beaucoup pour ta réponse...

Bonne fin de journée

Denys


Bonjour.
Me.TextBox17 = Me.TextBox17.NumberFormat = "$#,##0.00"
devrait le faire.
Cordialement.
Daniel
"Denys" a écrit dans le message de news:

Bonjour à tous,

Sur un textbox de mon userform, j'utilise l'instruction suivante:

If IsNumeric(TextBox17) = True Then
Me.TextBox17 = Format(Me.TextBox17, "$# ##0.00 ")
End If
Cette instruction survient immédiatement après que l'usager eut iinscrit
un
montant dans le textbox au-dessus du Textbox17. Une opération mathématique
s'ensuit et le résultat apparait dans le textbox17 comme suit : $2 171.11
par
exemple.

Seulement, dès que l'usager clique OK le résultat apparaissant dans le
textbox 17 doit subir un autre calcul, et cela, Excel ne le prends pas.

Il faudrait donc, je crois, "déformatiser" $2 171.11 pour que le calcul
puisse se faire.

Z'auriez une petite idée comment? Ou est-ce carrément une mauvaise idée de
formater le textbox17 ?

La raison que je voulais le faire c'est purement esthétique, parce que le
résultat donnait 2171.1124455

Ca fait pas très joli...

Merci pour votre temps

Denys









Avatar
michdenis
Bonjour Denys,

Déclare une variable au niveau du Formulare (haut de celui-ci plutôt que dans ta procédure)

Dim MyVar as Double

Et dans ta procédure, tu affectes le résultat à ta variable. Ce résultat peut être affiché à partir dans un textbox dans un format
particulier avec la fonction "Format()". Cependant, pour la suite des opérations, tu continues d'utiliser le résultat contenu dans
la variable plutôt que la valeur affichée dans le textbox. De façon générale, un textbox n'est utile que pour l'affichage du
résultat pour l'usager, mais les opérations mathématiques... doivent s'effectuer avec des variables bien typées et bien déclarées
(au niveau de la procédure, du formulaire, ou du classeur (Public).


Salutations!





"Denys" a écrit dans le message de news:
Bonjour à tous,

Sur un textbox de mon userform, j'utilise l'instruction suivante:

If IsNumeric(TextBox17) = True Then
Me.TextBox17 = Format(Me.TextBox17, "$# ##0.00 ")
End If
Cette instruction survient immédiatement après que l'usager eut iinscrit un
montant dans le textbox au-dessus du Textbox17. Une opération mathématique
s'ensuit et le résultat apparait dans le textbox17 comme suit : $2 171.11 par
exemple.

Seulement, dès que l'usager clique OK le résultat apparaissant dans le
textbox 17 doit subir un autre calcul, et cela, Excel ne le prends pas.

Il faudrait donc, je crois, "déformatiser" $2 171.11 pour que le calcul
puisse se faire.

Z'auriez une petite idée comment? Ou est-ce carrément une mauvaise idée de
formater le textbox17 ?

La raison que je voulais le faire c'est purement esthétique, parce que le
résultat donnait 2171.1124455

Ca fait pas très joli...

Merci pour votre temps

Denys
Avatar
Denys
Bonjour Denis,

Merci beaucoup pour ces explications. Je n'en savais rien. Faudra donc que
je lise là-dessus. C'était la première fois que j'étais confronté à ce genre
de problème.

Merci encore et bonne journée

Denys


Bonjour Denys,

Déclare une variable au niveau du Formulare (haut de celui-ci plutôt que dans ta procédure)

Dim MyVar as Double

Et dans ta procédure, tu affectes le résultat à ta variable. Ce résultat peut être affiché à partir dans un textbox dans un format
particulier avec la fonction "Format()". Cependant, pour la suite des opérations, tu continues d'utiliser le résultat contenu dans
la variable plutôt que la valeur affichée dans le textbox. De façon générale, un textbox n'est utile que pour l'affichage du
résultat pour l'usager, mais les opérations mathématiques... doivent s'effectuer avec des variables bien typées et bien déclarées
(au niveau de la procédure, du formulaire, ou du classeur (Public).


Salutations!





"Denys" a écrit dans le message de news:
Bonjour à tous,

Sur un textbox de mon userform, j'utilise l'instruction suivante:

If IsNumeric(TextBox17) = True Then
Me.TextBox17 = Format(Me.TextBox17, "$# ##0.00 ")
End If
Cette instruction survient immédiatement après que l'usager eut iinscrit un
montant dans le textbox au-dessus du Textbox17. Une opération mathématique
s'ensuit et le résultat apparait dans le textbox17 comme suit : $2 171.11 par
exemple.

Seulement, dès que l'usager clique OK le résultat apparaissant dans le
textbox 17 doit subir un autre calcul, et cela, Excel ne le prends pas.

Il faudrait donc, je crois, "déformatiser" $2 171.11 pour que le calcul
puisse se faire.

Z'auriez une petite idée comment? Ou est-ce carrément une mauvaise idée de
formater le textbox17 ?

La raison que je voulais le faire c'est purement esthétique, parce que le
résultat donnait 2171.1124455

Ca fait pas très joli...

Merci pour votre temps

Denys