Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2302 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Format pour un nombre

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Format pour un nombre

n°583750
R3g
fonctionnaire certifié ITIL
Posté le 05-12-2003 à 12:48:30  profilanswer
 

je voudrais formater un nombre pour l'afficher :
- pour un nombre entier, afficher le nombre tel quel (ex : 4)
- pour un nombre décimal, afficher avec seulement 2 décimale (ex : 5.24, même si le nompbre est en réalité 5.243897645284)
 
Selon les format que je mets, soit j'ai 4,00 et 5,24, soit 4 et 5.243897645284.
 


---------------
Au royaume des sourds, les borgnes sont sourds.
mood
Publicité
Posté le 05-12-2003 à 12:48:30  profilanswer
 

n°583829
drasche
Posté le 05-12-2003 à 15:30:01  profilanswer
 

avec un format classique, je suis pas sûr que tu pourras y arriver. Par contre, la fonction Round devrait te donner satisfaction, tu lui passes ton nombre et le nombre de décimales que tu désires.


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
n°583930
R3g
fonctionnaire certifié ITIL
Posté le 05-12-2003 à 17:19:51  profilanswer
 

drasche a écrit :

avec un format classique, je suis pas sûr que tu pourras y arriver. Par contre, la fonction Round devrait te donner satisfaction, tu lui passes ton nombre et le nombre de décimales que tu désires.

En fait c'est pas pour un programme, c'est pour un formulaire sous access, et le format est une propriété d'une zone de texte, donc pour les fonctions :/
Enfin tant pis, faudra faire avec 5,00 si il n'y a pas d'autre moyen.


---------------
Au royaume des sourds, les borgnes sont sourds.
n°583999
drasche
Posté le 05-12-2003 à 19:10:21  profilanswer
 

ben a priori, rien ne t'interdit de remplacer le champ DB par une fonction d'arrondi avec le champ DB en paramètre (et ne rien mettre pour le format).


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
n°584140
Carbon_14
Posté le 05-12-2003 à 22:38:29  profilanswer
 

Dans le principe, y a moyen de tester, une fois le format appliqué, si y a ",00" et dans ce cas de ne prendre que le nombre entier.
Ou faire calcul de 100 fois la valeur, la mettre dans un entier (ou long) et voir si divisée par 100 elle redonne l'original. Si oui, c'est un "x,00" et on peut utiliser un format "entier".

n°584272
karlkox
Posté le 06-12-2003 à 05:09:21  profilanswer
 

Code :
  1. Option Explicit
  2. Private Function FormatDecimal(ByVal m_value As String, ByVal m_nbDecimal) As String
  3. Dim m_counter As Long
  4. Dim m_virgulePos As Long
  5. Dim m_tmp As String
  6.     If m_nbDecimal > Len(m_value) Then
  7.         FormatDecimal = m_value
  8.         Exit Function
  9.     ElseIf m_nbDecimal = 0 Then
  10.         m_virgulePos = InStr(m_value, "." )
  11.         m_tmp = Mid$(m_value, 1, m_virgulePos - 1)
  12.         FormatDecimal = m_tmp
  13.         Exit Function
  14.     Else
  15.     m_virgulePos = InStr(m_value, "." )
  16.     m_tmp = Mid$(m_value, 1, m_virgulePos)
  17.     m_virgulePos = m_virgulePos + 1
  18.     ' base zero
  19.     m_nbDecimal = m_nbDecimal - 1
  20.     For m_counter = m_virgulePos To (m_virgulePos + m_nbDecimal)
  21.         m_tmp = m_tmp & Mid$(m_value, m_counter, 1)
  22.     Next m_counter
  23.    
  24.     End If
  25.     FormatDecimal = m_tmp
  26.  
  27. End Function
  28. Private Sub Form_Load()
  29.     MsgBox FormatDecimal("5.243897645284", 2)
  30. End Sub


 
Code fait à l'arrache ... à améliorer.

n°584595
R3g
fonctionnaire certifié ITIL
Posté le 06-12-2003 à 17:54:41  profilanswer
 

Mouais, c'es une voie à explorer, je vais tester ça. Merci à vous trois.


---------------
Au royaume des sourds, les borgnes sont sourds.

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Format pour un nombre

 

Sujets relatifs
[Mail] Format encode d'un texte HTMLGénérer un nombre aléatoire...
Afficher le nombre de connectés sur un siteQuestion sur les nombre aléatoires...
Question sur format de variableMeilleur format image pour un site web
afficher le nombre de requete et le temp de chargementUn textarea au format RTF
Ecriture d'un nombre selon un format précisCalculs en conservant le format du nombre
Plus de sujets relatifs à : Format pour un nombre


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR