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 :

calcul d'une différence


Sujet :

Access

  1. #1
    Membre à l'essai
    Homme Profil pro
    Débutant
    Inscrit en
    Juillet 2022
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Débutant
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2022
    Messages : 15
    Points : 10
    Points
    10
    Par défaut calcul d'une différence
    Bonjour,

    Et avant tout, merci à ceux qui pourront m'aider.

    J'ai deux tables "écriture" et "mouvements" c'est pour faire une comptabilité. dans la table écriture j'ai un champ "numécriture" qui est un champ numéroauto. Dans la table mouvements j'ai un champ "réfécriture" qui me permet de lier les deux tables, ainsi je peux avoir une écriture avec plusieurs lignes. J'ai dans la table mouvements entre autre deux champs "Débit" et "Crédit". La somme des montants Débit et Crédit doit être égal pour un même numéro d'écriture. je fais donc une vérification avec une requête qui fait la différence de la somme des Débits et des Crédits par écriture et qui m'affiche le résultat quand il n'est pas égal à zéro. Mais voilà mon problème pour quelques écritures j'obtiens un résultat comme "-1,4210854715202E-14" alors que la somme des Débits et des Crédits est le même et que la différence est bien 0....

    J'ai essayé de mettre les champs Débits et Crédits dans le calcul de la différence en valeur absolue, j'ai toujours ce résultat bizarre.

    Merci de bien vouloir m'aider.

    Michel

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Responsable Données
    Inscrit en
    Janvier 2009
    Messages
    5 258
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable Données

    Informations forums :
    Inscription : Janvier 2009
    Messages : 5 258
    Points : 12 927
    Points
    12 927
    Par défaut
    Bonjour,
    Il s'agit d'un problème de "précision" du type de donnée utilisé.
    Quel est le type des colonnes "Débit" et "Crédit" ?

    Je ne connais pas trop Access, mais en fouillant j'ai trouvé qu'il propose un type "Devise", qui je pense sera tout à fait approprié ici.

    Tatayo.

  3. #3
    Membre à l'essai
    Homme Profil pro
    Débutant
    Inscrit en
    Juillet 2022
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Débutant
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2022
    Messages : 15
    Points : 10
    Points
    10
    Par défaut
    Merci Tatayo pour ta réponse,

    mais j'ai bien évidemment essayé de formater les champs soit en devise, soit en euro, soit en valeur absolue et rien ne change le résultat.

    La taille des champs Débit et Crédit est "réel double" et formaté en "Euro"

  4. #4
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 817
    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 817
    Points : 14 911
    Points
    14 911
    Par défaut
    bonjour,
    il faut convertir la somme des montants en type Devise (Currency) avec CCur():
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Select NumEcrit, CCur(Sum(Credit)) - CCur(Sum(Debit)) as Solde From tblMouvements Group by NumEcrit;

  5. #5
    Membre à l'essai
    Homme Profil pro
    Débutant
    Inscrit en
    Juillet 2022
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Débutant
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2022
    Messages : 15
    Points : 10
    Points
    10
    Par défaut
    Citation Envoyé par tee_grandbois Voir le message
    bonjour,
    il faut convertir la somme des montants en type Devise (Currency) avec CCur():
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Select NumEcrit, CCur(Sum(Credit)) - CCur(Sum(Debit)) as Solde From tblMouvements Group by NumEcrit;

  6. #6
    Membre à l'essai
    Homme Profil pro
    Débutant
    Inscrit en
    Juillet 2022
    Messages
    15
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Débutant
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2022
    Messages : 15
    Points : 10
    Points
    10
    Par défaut
    Merci beaucoup tee_grandbois, j'avais essayé mais certainement pas comme il fallait. le problème est résolu, merci encore

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

Discussions similaires

  1. Calcul d'une différence de phase entre 2 signaux
    Par rollo dans le forum Signal
    Réponses: 7
    Dernier message: 13/02/2018, 17h29
  2. Réponses: 2
    Dernier message: 17/11/2013, 18h59
  3. Calcul d'une différence dans access
    Par Ju-Der dans le forum Access
    Réponses: 11
    Dernier message: 13/03/2013, 22h45
  4. Calcul d'une différence de sommes dans une requête
    Par oohcalme dans le forum Requêtes et SQL.
    Réponses: 12
    Dernier message: 07/07/2008, 11h56
  5. [Dates] Calcul d'une différence entre deux heures
    Par loreleï85 dans le forum Langage
    Réponses: 12
    Dernier message: 28/06/2006, 11h43

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