Vba - Nb chiffres après virgule dans TextBox

Résolu/Fermé
DjSKeud Messages postés 97 Date d'inscription mardi 25 avril 2006 Statut Membre Dernière intervention 22 avril 2015 - 22 janv. 2008 à 12:14
 lahlah70 - 15 févr. 2010 à 20:32
Bonjour à tous,

Mon problème n'est pas si facil que ce qu'il peut paraître dans le titre :
je souhaite afficher une valeur avec 1 chiffres après la virgule dans une textBox alors que le chiffre réel en contient 4.
Attention, je ne veut pas faire du round(xx, 1) avec ma valeur car je veux que celle-ci garde bien sa précision de 4 chiffres. Autrement dit, existe t-il un attribut à l'objet TextBox permettant l'affichage d'1 décimal tout en gardant la précision à 4. (comme un format nombre dans une cellule Excel)

Merci à tous de votre aide.

8 réponses

idrol Messages postés 1 Date d'inscription samedi 9 janvier 2010 Statut Membre Dernière intervention 10 janvier 2010 13
10 janv. 2010 à 00:02
essayez vous
LeNum = 2.657856
LeNum = FormatNumber(LeNum, 1)
c en vb
12
Merci infiniment!!
0
phil_232 Messages postés 286 Date d'inscription jeudi 6 décembre 2007 Statut Membre Dernière intervention 12 juin 2008 33
22 janv. 2008 à 23:39
en pincipe c'est la fonction formqt (en VB). mais quand tu veux recuperer la valeur de cette textbox tu auras la valeur arrondie. dans HTML tu peut te creer un attribut dans le <input name="MyInput" value="<MyFormattedValue" theRealValue="<MyVariable>"/>. tu peux ensuite chercher cette valeur avec document.getElementById("MyInput"),theRealValue (attention JavaScript respecte Maj/Min - pour les fonctions, variables, textboxes...)!!!
2
phil_232 Messages postés 286 Date d'inscription jeudi 6 décembre 2007 Statut Membre Dernière intervention 12 juin 2008 33
23 janv. 2008 à 02:04
rien t'empêche de stocker cette valeur dans une variable. vba est just bien pour ça.
2
DjSKeud Messages postés 97 Date d'inscription mardi 25 avril 2006 Statut Membre Dernière intervention 22 avril 2015 31
25 janv. 2008 à 19:45
Hey,

non je me suis mal exprimé, evidament il n'y a pas 4000 textbox, mais en fait jai 2 listes deroulantes qui me permettent d'extraire une valeur dans une BDD. Le truc est que dans un souci de rapidité et d'egonomie je dois stoquer toutes les valeurs modifiées dans une sorte de page temporaire, puis quand toutes les modifications sont terminées, alors faire des updates dans ma BDD.

Merci pour ta piste, je vais tester ca rapidement, et je te tiens au courant.
1

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
DjSKeud Messages postés 97 Date d'inscription mardi 25 avril 2006 Statut Membre Dernière intervention 22 avril 2015 31
22 janv. 2008 à 23:43
... je suis en vba, pas en html, malheuresement d'ailleur
oui, c'est bien ca le probleme, si je fait un format, je perd à tous jamais la précision de ma valeur !!


Merci quand meme, mais le probleme reste entier :(

0
DjSKeud Messages postés 97 Date d'inscription mardi 25 avril 2006 Statut Membre Dernière intervention 22 avril 2015 31
23 janv. 2008 à 08:40
Bjr,

Hé non, j'y ai bien pensé crois moi, le problème est que ma TextBox sert non seulement d'affichage de valeurs, mais également de saisi, et que en plus j'ai environ 4000 valeurs que je dois garder en cache (si je reprend ta technique) par ce que je dois y avoir acces à tous moment. Autrement dit, il n'est pas possible de creer une sorte de variable tampon faisant le lien entre l'affichage à 4 chiffres après la virgule, et celui à 1. Suis-je clair ?
0
phil_232 Messages postés 286 Date d'inscription jeudi 6 décembre 2007 Statut Membre Dernière intervention 12 juin 2008 33
23 janv. 2008 à 21:45
"ma TextBox sert non seulement d'affichage de valeurs, mais également de saisi"
là je ne te suis plus tellement. tu affiches un chiffre après la virfule, non ? puis on peut quand-même taper plein de chiffres après la virgule en mode saisi, par contre ton affichage après saisi doit montrer seulement une virgule mais en arrière-plan tu travaille avec les 4 après virgule. HEIN ! ton user va dire quoi s'il entre 1.4567 puis il voit 1.4 et dans un calcule genre "fois deux" il voit 2.9 comme résultat bien que ton affichage devrait donner 2 * 1.4 = 2.8. je crois qu'il y a un pb là.

"en plus j'ai environ 4000 valeurs". QUOI ??? dans une seule forme, dans toute l'application ? je crois là aussi il y a pb de design de l'application, mais bon.

en resumé : non une textbox ne "se souvient" pas d'une ancienne valeur. mais Access connait la propriété Format (c'est donc pas la fonction qui porte le même nom mais une prop de la textbox). ceci ne modifie pas la valeur mais seulement son affichage SOUS CONDITION QUE le champ a un lien vers la base de données cad la prop ControlSource est utilisée. á tester comment ca se comporte à la saisie mais normalement ca devrait fonctionner pour la saisi mais l'affichage pourrait merder cad là tu vois le 4 chiffres lors de la saisie mais quand tu fais un requery l'affichage serait bon.
0
slt moi yassin svp donné moi la methode pour codé les chifre avec virgule comme (0.875)en base 2
0