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

VBA Access Discussion :

ARRONDI des nombres


Sujet :

VBA Access

  1. #1
    Nouveau membre du Club
    Inscrit en
    Juin 2009
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 32
    Points : 29
    Points
    29
    Par défaut ARRONDI des nombres
    Bonjour Tous,

    J'ai la fonction =ARRONDI.INF(AA7;-3) qui me permet d'arrondir au millier inférieur mes nombres
    exemple
    587580 devient 587.000
    55640 devient 55.000
    j'aimerais l’utiliser sur access pour mes arrondis
    Quelle est la bonne syntaxe
    merci

  2. #2
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 648
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 648
    Points : 14 626
    Points
    14 626
    Par défaut
    bonjour,
    FIX(587580 * 0.001) * 1000 devrait donner le bon résultat
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  3. #3
    Expert éminent
    Homme Profil pro
    Webplanneur
    Inscrit en
    Octobre 2007
    Messages
    4 262
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Réunion

    Informations professionnelles :
    Activité : Webplanneur

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 262
    Points : 6 561
    Points
    6 561
    Par défaut
    Salut
    La fct Round() devrait faire l'affaire.
    Round([lechamp], -3)
    "Le savoir est la seule matière qui s'accroit quand on la partage" (Socrate)
    UR - ESIROI - GPME/CG/DCG8
    QTH :21°19'18"S - 055°25'32"E
    Inutile de me contacter par MP
    Merci de cliquer sur si la réponse vous a permis de résoudre votre problème et n'oubliez pas de clôturer le fil en cliquant sur

  4. #4
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 648
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 648
    Points : 14 626
    Points
    14 626
    Par défaut
    hyperion13,
    Citation Envoyé par hyperion13 Voir le message
    Salut
    La fct Round() devrait faire l'affaire.
    Round([lechamp], -3)
    un p'tit coup de fatigue ?

    Nom : _0.JPG
Affichages : 682
Taille : 22,8 Ko

    Round, s'utilise avec des nombres avec décimales et le paramètre décimales n'accepte pas de valeur négative.
    Si vraiment tu veux utiliser Round il faut récupérer la valeur entière (ce que fait Fix) et ensuite la multiplier par 1000:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    int(round(55640 *.001,3)) * 1000
    mais Fix renvoie un résultat plus précis pour les nombres négatifs:https://docs.microsoft.com/fr-fr/off...ectedfrom=MSDN
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  5. #5
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 260
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 260
    Points : 19 423
    Points
    19 423
    Billets dans le blog
    63
    Par défaut
    Bonjour à tous,

    Et pourquoi pas simplement en utilisant la division entière :

    Cdlt,
    Vous trouverez dans la FAQ, les sources ou les tutoriels, de l'information accessible au plus grand nombre, plein de bonnes choses à consulter sans modération

    Des tutoriels pour apprendre à créer des formulaires de planning dans vos applications Access :
    Gestion sur un planning des présences et des absences des employés
    Gestion des rendez-vous sur un calendrier mensuel


    Importer un fichier JSON dans une base de données Access :
    Import Fichier JSON

  6. #6
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 648
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 648
    Points : 14 626
    Points
    14 626
    Par défaut
    bonjour User,
    as-tu regardé le résultat ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ? (55640 \ 1000)*1000
    55640
    Citation Envoyé par bellemeche
    J'ai la fonction =ARRONDI.INF(AA7;-3) qui me permet d'arrondir au millier inférieur mes nombres
    exemple
    587580 devient 587.000
    55640 devient 55.000
    il faut donc bien utiliser Fix pour arrondir:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ? FIX(55640 * 0.001) * 1000
    55000
    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ? FIX(55640 /1000) * 1000
     55000
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  7. #7
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 260
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 260
    Points : 19 423
    Points
    19 423
    Billets dans le blog
    63
    Par défaut
    Citation Envoyé par tee_grandbois Voir le message
    bonjour User,
    as-tu regardé le résultat ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ? (55640 \ 1000)*1000
    55640
    Désolé tee_grandbois, mois j'ai bien :

    Nom : arrondi.jpg
Affichages : 629
Taille : 9,2 Ko

    division entière : \

    Cdlt,
    Vous trouverez dans la FAQ, les sources ou les tutoriels, de l'information accessible au plus grand nombre, plein de bonnes choses à consulter sans modération

    Des tutoriels pour apprendre à créer des formulaires de planning dans vos applications Access :
    Gestion sur un planning des présences et des absences des employés
    Gestion des rendez-vous sur un calendrier mensuel


    Importer un fichier JSON dans une base de données Access :
    Import Fichier JSON

  8. #8
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 648
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 648
    Points : 14 626
    Points
    14 626
    Par défaut
    /
    \
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  9. #9
    Nouveau membre du Club
    Inscrit en
    Juin 2009
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Juin 2009
    Messages : 32
    Points : 29
    Points
    29
    Par défaut
    Citation Envoyé par tee_grandbois Voir le message
    bonjour,
    FIX(587580 * 0.001) * 1000 devrait donner le bon résultat
    Merci résolu

  10. #10
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 648
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 648
    Points : 14 626
    Points
    14 626
    Par défaut
    bonjour Ric500,
    ce problème est connu depuis des lustres ... et est dû à l'utilisation du système de calcul d'opérations à virgule fottante appelé FLOPS en anglais (c'est sûr, qu'avec un nom pareil ...) dont le problème est la précision comme indiqué sur ce lien dans le paragraphe "Inconvénient".
    Çà fait un peu peur d'envoyer des gars sur la lune avec des outils comme çà! Qu'en pensez-vous?
    C'est un peu tard de s'en préoccuper 50 ans après, d'ailleurs à l'époque les ordinateurs étaient beaucoup trop gros pour être embarqués: Neil Armstrong a fait alunir le module lunaire avec un ordinateur pesant 32 kilos, ayant 72 ko de mémoire morte et 4 ko de mémoire vive.

    Ordinateur, qui a buggé pendant la phase d'alunissage obligeant le pilote à prendre les commandes et finir manuellement de poser l'engin sur le sol lunaire.
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  11. #11
    Membre éprouvé Avatar de Ric500
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    956
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2004
    Messages : 956
    Points : 1 139
    Points
    1 139
    Par défaut ARRONDI des nombres
    Si Armstrong a dû (se) finir à la main, çà explique le malaise de Buzz Aldrin à son retour !

    Essayer. Rater. Essayer encore. Rater encore. Rater mieux. (Samuel Beckett)
    Ou encore:
    Quand ça ne tourne pas rond dans le carré de l'hypothénuse , c'est signe qu'il est grand temps de prendre les virages en ligne droite.(Pierre Dac)
    ... Des principes qui m'ont beaucoup aidé en informatique...

  12. #12
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 648
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 648
    Points : 14 626
    Points
    14 626
    Par défaut
    et tout çà sans gravité !
    Quand on est derrière l'écran on n'a aucun clavier sous les mains ...
    ah non ? donc devant l'écran c'est la connectique ?

  13. #13
    Rédacteur/Modérateur

    Avatar de User
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    8 260
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 8 260
    Points : 19 423
    Points
    19 423
    Billets dans le blog
    63
    Par défaut Dates et heures
    Bonjour,

    Sans compter les dates (dates et heures en fait) qui sont aussi des nombres à virgule flottante double.

    En gros si vous avez enregistrez 2 rendez-vous dans une table et que vous avez en apparence :

    IDentifiant Rdv] = "Rdv 1"
    [Date de début] = "02/10/2019 08:30:00"
    [Date de fin] = "02/10/2019 09:00:00"

    IDentifiant Rdv] = "Rdv 2"
    [Date de début] = "02/10/2019 09:00:00"
    [Date de fin] = "03/10/2019 17:30:00"

    S'il y a eu une erreur d'opération à virgule flottante au moment de l'enregistrement de la "date de fin" du "rdv 1", il se peut que cette date (affichée : "02/10/2019 09:00:00") soit en fait légèrement supérieure à la date de début du rdv2 (affichée pourtant aussi "02/10/2019 09:00:00") ce qui peut provoquer des incohérence au niveau des comparaisons des dates et heures

    Cdlt,
    Vous trouverez dans la FAQ, les sources ou les tutoriels, de l'information accessible au plus grand nombre, plein de bonnes choses à consulter sans modération

    Des tutoriels pour apprendre à créer des formulaires de planning dans vos applications Access :
    Gestion sur un planning des présences et des absences des employés
    Gestion des rendez-vous sur un calendrier mensuel


    Importer un fichier JSON dans une base de données Access :
    Import Fichier JSON

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

Discussions similaires

  1. Arrondi des nombres Double
    Par clubist dans le forum Débuter avec Java
    Réponses: 14
    Dernier message: 22/02/2019, 13h36
  2. Réponses: 3
    Dernier message: 22/05/2005, 12h59
  3. Cripter avec des nombres premiers
    Par clovis dans le forum Algorithmes et structures de données
    Réponses: 3
    Dernier message: 14/04/2004, 19h10
  4. [LG]Extraire des nombres d'une chaine
    Par audreym31 dans le forum Langage
    Réponses: 4
    Dernier message: 18/01/2004, 21h24
  5. Réponses: 3
    Dernier message: 08/09/2003, 15h06

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