IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB 6 et antérieur Discussion :

vb4 arrondir un nombre


Sujet :

VB 6 et antérieur

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Juin 2006
    Messages
    133
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 133
    Par défaut vb4 arrondir un nombre
    Bonjour, jutilise vb4 (je sais, mais jai pas le choix pour mon cas) pour une application et je veux arrondir un "single" (7.526411E-02) a 4 places apres la virgule. Je ne crois pas que vb4 possede de fonction Round() alors a laide svp!




    merci a lavance

  2. #2
    Expert confirmé
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 132
    Par défaut
    4 places apres la virgule
    En notion scientifique 7.526789E-02 -> 7.5267E-02
    ou 0.07526789 -> 0.0752

    Je ne me souvenai pas que sous VB4 la fonction Round n'existait pas

    voila se que je te propose, pas un arrondi mais une limitation à 4 chiffres apres la virgule
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    Option Explicit
    Dim Mechiffre As Single
    Dim ChifStr As String
    Dim T As Integer, U As Integer
    Dim MeRound As String
    Dim NbrDecimal As Integer
    Private Sub Form_Load()
    'Mechiffre = 75267890123456# '7.526789E-02
    Mechiffre = 0.07526789 '7.526789E-02
    'Mechiffre = 789.0289563
    ChifStr = CStr(Mechiffre)
    U = 0: NbrDecimal = 4 + 1
    For T = 1 To Len(ChifStr)
     If U <> 0 Then U = U + 1
     If Mid(ChifStr, T, 1) = "," Then U = 1
     MeRound = MeRound & Mid(ChifStr, T, 1)
     If U = NbrDecimal Then Exit For '4 chiffres apres la virgule
    Next T
    If Left(Right(ChifStr, 4), 1) = "E" Then
     MeRound = MeRound & Right(ChifStr, 4)
    End If
    Mechiffre = CSng(MeRound)
    End Sub
    Je pense que d'ici demain, d'autres forumeurs te feront des proposition plus elaborées
    :whistle:pourquoi pas, pour remercier, un :plusser: pour celui/ceux qui vous ont dépannés.
    saut de ligne
    OOOOOOOOO👉 → → Ma page perso sur DVP ← ← 👈

  3. #3
    Membre Expert Avatar de OhMonBato
    Homme Profil pro
    Inscrit en
    Mars 2007
    Messages
    2 660
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2007
    Messages : 2 660
    Par défaut
    nombre = format(nombre,"0.0000") me parait plus simple à moins que je n'ai pas bien compris le truc.

  4. #4
    Expert confirmé
    Avatar de ProgElecT
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2004
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6 132
    Par défaut


    ProgElecT DODO
    :whistle:pourquoi pas, pour remercier, un :plusser: pour celui/ceux qui vous ont dépannés.
    saut de ligne
    OOOOOOOOO👉 → → Ma page perso sur DVP ← ← 👈

  5. #5
    Membre Expert
    Avatar de zazaraignée
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    3 174
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 3 174
    Par défaut
    Je ne crois pas que vb4 possede de fonction Round()
    Ha? T'as essayé? Il est vrai que j'ai commencé à jouer avec VB à partir de la version 5 et Round existait à ce moment.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Dim NbrArrondi As Single
    NbrArrondi = Round(leNombre, 4)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. arrondire un nombre
    Par Damarus dans le forum Langage
    Réponses: 5
    Dernier message: 22/11/2005, 17h30
  2. Arrondir un nombre comme j'en ai envie !
    Par beletteroi dans le forum Access
    Réponses: 6
    Dernier message: 03/11/2005, 12h42
  3. arrondir un nombre découlant d'une soustraction de date
    Par bertrand_declerck dans le forum Langage
    Réponses: 2
    Dernier message: 17/08/2005, 13h51
  4. arrondir un nombre à 2 chiffres après la virgule
    Par El Saigneur dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 01/02/2005, 08h36
  5. [langage] arrondir un nombre
    Par GMI3 dans le forum Langage
    Réponses: 4
    Dernier message: 24/06/2004, 11h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo