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

Access Discussion :

Somme sur des nombre décimaux


Sujet :

Access

  1. #1
    Futur Membre du Club
    Inscrit en
    Juillet 2006
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 15
    Points : 6
    Points
    6
    Par défaut Somme sur des nombre décimaux
    Bonjour à tous,
    Je n'ai pas trouvé de réponse à mon problème dans la FAQ, alors je m'en retourne au forum, en espérant que quelqu'un saura m'aider.
    J'ai le code suivant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Private Sub Commande9_Click()
        Somme = "SELECT SUM (ASSOCIE_ACTIF.taux) FROM ASSOCIE_ACTIF;"
        If Somme = 100# Then
            DoCmd.Close acForm, "F_ASSOCIE_", acSaveYes
            DoCmd.OpenForm "F_CHANTIER_ACTIF", , , "numChantier = CHANTIER_ACTIF.numChantier"
        Else
            Rep = MsgBox("La somme des taux doit être égale à 100%", vbOKOnly, "Erreur dans la saisie des associés")
            DoCmd.OpenForm "F_ASSOCIE", acNormal
        End If
    End Sub
    Dans la table ASSOCIE_ACTIF, j'ai 2 enregistrements dont les champs taux sont respectivement égaux à 87,000 et 13,000 (les 3 décimales sont nécessaires)
    Comment se fait-il, alors que la somme fait bien 100, que ma msgbox s'affiche, et non pas mon formulaire

  2. #2
    Expert confirmé

    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 419
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 419
    Points : 4 297
    Points
    4 297
    Par défaut
    c'est un problème de précision numérique, il y a discordance entre les grandeurs réelles et leurs représentations informatiques
    pour le règler on peut

    utilser des champs et variable currency


    ou une fonction environ
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Function environ(x As Double, y As Double, upsilon As Double) As Boolean
    environ = Abs(x - y) < upsilon
    End Function
    Elle est pas belle la vie ?

Discussions similaires

  1. Comment calculer des moyennes sur des nombres positifs
    Par robertetgorgette dans le forum Access
    Réponses: 2
    Dernier message: 20/07/2006, 14h05
  2. Somme sur des arrondis
    Par GregPeck dans le forum Requêtes
    Réponses: 3
    Dernier message: 12/05/2006, 09h54
  3. [Order by] classer des résultats sur des nombres
    Par vampiloup dans le forum Requêtes
    Réponses: 2
    Dernier message: 13/01/2006, 14h58
  4. Select sur des nombre décimaux de format 0.*
    Par CanardJM dans le forum Langage SQL
    Réponses: 8
    Dernier message: 18/08/2005, 16h04
  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