imposer un format .00 ou .000 ou .00 EURO dans un textbox

Le
Fredo(67)
Bonjour,

j'ai différents textbox et je voudrais y forcer le format

quand je saisi 123.1, que cela m'affiche par exemple 123.10

voilà ce que j'ai codé
QtE1 est le nom de mon textbox


Private Sub QtE1_Change()
QtE1.Value = Format(QtE1.Value, "#,##0.000_ ;[Red]-#,##0.000 ")
end sub

Mais quand je commence à taper les chiffres dans la case cela donne :
1.000_.125

où me trompe-je ?

Merci
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Jacky
Le #26315534
Bonjour
Sur un userform ou sur une feuille ?

--
Salutations
JJ


"Fredo(67)"
Bonjour,

j'ai différents textbox et je voudrais y forcer le format

quand je saisi 123.1, que cela m'affiche par exemple 123.10

voilà ce que j'ai codé
QtE1 est le nom de mon textbox


Private Sub QtE1_Change()
QtE1.Value = Format(QtE1.Value, "#,##0.000_ ;[Red]-#,##0.000 ")
end sub

Mais quand je commence à taper les chiffres dans la case cela donne :
1.000_.125

où me trompe-je ?

Merci
Fredo(67)
Le #26315537
Et vi je n'ai pas précisé...
En fait c'est dans un textbox au moment de la saisie, plus particulièr ement au moment où le focus change de textbox.

Par contre j'utilise les valeurs saisies dans ces textbox pour faire un cal cul un peu plus loin dans la macro....




Le jeudi 16 octobre 2014 15:21:31 UTC+2, Jacky a écrit :
Bonjour

Sur un userform ou sur une feuille ?



--

Salutations

JJ





"Fredo(67)" <> a �crit dans le message de news:



Bonjour,



j'ai diff�rents textbox et je voudrais y forcer le format



quand je saisi 123.1, que cela m'affiche par exemple 123.10



voil� ce que j'ai cod�

QtE1 est le nom de mon textbox





Private Sub QtE1_Change()

QtE1.Value = Format(QtE1.Value, "#,##0.000_ ;[Red]-#,##0.000 ")

end sub



Mais quand je commence � taper les chiffres dans la case cela don ne :

1.000_.125



o� me trompe-je ?



Merci
Jacky
Le #26315541
Re..
Et vi je n'ai pas précisé...
En fait c'est dans un textbox au moment de la saisie...


Cela ne répond pas à ma question
Sur un userform ou sur une feuille ? "Le textbox"

--
Salutations
JJ


"Fredo(67)"
Et vi je n'ai pas précisé...
En fait c'est dans un textbox au moment de la saisie, plus particulièrement au moment où le focus change de
textbox.

Par contre j'utilise les valeurs saisies dans ces textbox pour faire un calcul un peu plus loin dans la
macro....




Le jeudi 16 octobre 2014 15:21:31 UTC+2, Jacky a écrit :
Bonjour

Sur un userform ou sur une feuille ?



--

Salutations

JJ





"Fredo(67)" <> a ?crit dans le message de news:



Bonjour,



j'ai diff?rents textbox et je voudrais y forcer le format



quand je saisi 123.1, que cela m'affiche par exemple 123.10



voil? ce que j'ai cod?

QtE1 est le nom de mon textbox





Private Sub QtE1_Change()

QtE1.Value = Format(QtE1.Value, "#,##0.000_ ;[Red]-#,##0.000 ")

end sub



Mais quand je commence ? taper les chiffres dans la case cela donne :

1.000_.125



o? me trompe-je ?



Merci
Fredo(67)
Le #26315540
dans un USERFORM
Jacky
Le #26315543
dans un USERFORM


Aaaahhh!

Pour le textbox QtE1
'--------------
Private Sub QtE1_AfterUpdate()
With QtE1
If IsNumeric(.Value) Then
.Value = Format(QtE1.Value, "# ##0.00")
.ForeColor = IIf(.Value < 0, vbRed, vbBlack)
Else
MsgBox "Erreur de saisie", 64, "Saisie incorrecte"
End If
End With
End Sub
'--------------
Tu peux éventuellement ajouter ce contrôle pour n'autoriser que les chiffres
'-------------
Private Sub QtE1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If InStr("1234567890.-", Chr(KeyAscii)) = 0 Then KeyAscii = 0
End Sub
'------------
--
Salutations
JJ


"Fredo(67)"
dans un USERFORM
Fredo(67)
Le #26315645
c'est super, et ta proposition de vérification du type de donnée saisie et très bonne

par contre, comment pourrait on faire pour avoir l'affichage "EURO"

?
Jacky
Le #26315697
RE..

....comment pourrait on faire pour avoir l'affichage "EURO"


Remplacer cette ligne
.Value = Format(QtE1.Value, "# ##0.00")
par
.Value = Format(.Value, "# ##0.00 EURO")
ou
.Value = Format(.Value, "# ##0.00 ?")

--
Salutations
JJ


"Fredo(67)"
c'est super, et ta proposition de vérification du type de donnée saisie et très bonne

par contre, comment pourrait on faire pour avoir l'affichage "EURO"

?
Fredo(67)
Le #26316404
Tout cela marche très bien, mais

une fois que j'ai récupéré ces valeurs dans mon tableau excel, je sou haite faire des calculs avec les chiffres ainsi saisis et

Si je tape par exemple 10 ens à -3 369.98
il inscrit -33 699.98 (en rouge mais avec un espace entre le 3 et le 6) ce qui fait que excel le considère comme du texte et refuse de calculer avec ...

Ce que je cherche à faire, c'est qu'à l'affichage dans le text-box il a pparaisse en format millier et rouge si négatif mais qu'il soit renvoyé en nombre standard dans excel.
(je gère l'affichage dans excel avec le format de cellule...


Merci
Jacky
Le #26316422
Re...
Si je tape par exemple 10 ens à -3 369.98


???
Ceci est incompréhensible pour moi..
Exemple simple avec 2 TextBox est le résultat en A1 et B1
http://cjoint.com/?DJuslYw7Gge

--
Salutations
JJ


"Fredo(67)"
Tout cela marche très bien, mais

une fois que j'ai récupéré ces valeurs dans mon tableau excel, je souhaite faire des calculs avec les chiffres
ainsi saisis et

Si je tape par exemple 10 ens à -3 369.98
il inscrit -33 699.98 (en rouge mais avec un espace entre le 3 et le 6) ce qui fait que excel le considère
comme du texte et refuse de calculer avec...

Ce que je cherche à faire, c'est qu'à l'affichage dans le text-box il apparaisse en format millier et rouge si
négatif mais qu'il soit renvoyé en nombre standard dans excel.
(je gère l'affichage dans excel avec le format de cellule...


Merci
Fredo(67)
Le #26316543
Merci pour cette correction...


Le jeudi 16 octobre 2014 14:47:14 UTC+2, Fredo(67) a écrit :
Bonjour,



j'ai différents textbox et je voudrais y forcer le format



quand je saisi 123.1, que cela m'affiche par exemple 123.10



voilà ce que j'ai codé

QtE1 est le nom de mon textbox





Private Sub QtE1_Change()

QtE1.Value = Format(QtE1.Value, "#,##0.000_ ;[Red]-#,##0.000 ")

end sub



Mais quand je commence à taper les chiffres dans la case cela donne :

1.000_.125



où me trompe-je ?



Merci
Publicité
Poster une réponse
Anonyme