chokri_kh
Messages postés7Date d'inscriptionlundi 6 avril 2009StatutMembreDernière intervention21 juin 2005
-
21 juin 2005 à 19:10
chokri_kh
Messages postés7Date d'inscriptionlundi 6 avril 2009StatutMembreDernière intervention21 juin 2005
-
21 juin 2005 à 22:30
aidez-moi à franchir les premiers pas VB
A voir également:
Dans le calculs des factures ou autres le montant sera par exemple 125.36258 je
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 21 juin 2005 à 20:31
Salut
Original (et bonne idée) que d'exposer son problème dans le titre ! j'aime bien ...
Bref. Donc, pour découper sans faire l'arrondi (*), il faut que tu transforme ton chiffre en chaine (string), que tu tripotes le nombre de caractères puis que tu retransforme en chiffre. Ca parait compliqué, mais ça ne l'est pas :
Temp = CStr(monChiffre) ' chiffre en chaine
r = Instr(Temp, ".") ' repérer où est la 'virgule', le point
' Si on a trouvé une virgule, on prend les tous les caractères de gauche jusqu'au 'r', + 2 chiffres derrière
If r > 0 Then Temp = Left(Temp, r + 2)
monChiffre = Val(Temp) ' Retransforme en chiffre
(*) ce qui n'est pas légal sur une facture
Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés
Le savoir est la seule matière qui s'accroit quand on la partage. (Socrate)
chokri_kh
Messages postés7Date d'inscriptionlundi 6 avril 2009StatutMembreDernière intervention21 juin 2005 21 juin 2005 à 22:30
en Réponse à JACK , dans une facture ou autre liste contenant des valeurs ex : 12,12548 + 15,23648 + 14,588656 : l'ordinateur va arrondir et faire : 12.125 + 15.236 + 14.589 = 41.951 , le client par contre en prenant une calculatrice et faisant la somme des même nombre va trouver 41.950 ?? pour ce petit 1 c'est une histoire .... merci à tous
<COLGROUP>
<COL width=90>