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 :

Récupérer le résultat d'un total d'une requête dans un autre champ [AC-2010]


Sujet :

Access

  1. #1
    Candidat au Club
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Décembre 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chef de projet MOA

    Informations forums :
    Inscription : Décembre 2014
    Messages : 4
    Points : 2
    Points
    2
    Par défaut Récupérer le résultat d'un total d'une requête dans un autre champ
    bonsoir,
    j'aimerais récupérer le total issu d'une requête sur une table pour pouvoir l'additionner à un autre total issu d'une autre requête.
    J'ai mis ces requêtes dans des champs listes dans un formulaire
    pouvez-vous m'aider ?
    je débute en access et n'ai pour l'instant lu qu'un seul bouquin ...
    merci !!

  2. #2
    Expert éminent

    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    3 840
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations forums :
    Inscription : Mai 2012
    Messages : 3 840
    Points : 7 974
    Points
    7 974
    Par défaut
    Bonjour,

    Je n'ai pas très bien compris les éléments que vous avez et ce que vous voulez obtenir (vous employez trop de termes "techniques" Access en même temps), donc si avec la proposition ci-dessous, ça va pas, essayez de donner plus d'information.
    La solution la plus simple pour récupérer 1 valeur à partir d'une table ou d'une requête sur Access est l'utilisation des fonctions de domaines dont le tuto de référence du site est ICI.
    Très court :
    Si nous avons la table TABLE1 avec les champs Champ1 et Champ2. Si on veut trouver :
    1- le total de Champ1 de la table TABLE1,
    on utilise :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    = SOMDOM("[Champ1]";"TABLE1]")
    . Attention SOMDOM va être transformé en DSUM sous VBA ou SQL ou sur un Access anglais.
    2- le total de Champ1 de la table TABLE1 dont les valeurs de Champ2 sont égaux à XXXXX,
    on utilise : = SOMDOM("[Champ1]";"TABLE1]","[Champ2]=""" & XXXXX & """" ).

    Cordialement et bonnes fêtes de fin d'année.
    Mandresy
    "Je ne sais qu'une chose, c'est que je ne sais rien" Socrate

    N'oublions pas de mettre quand on a trouvé notre bonheur. Soyons sympa pour les futurs heureux.

    Merci, c'est toujours sympa de recevoir des de votre part

  3. #3
    Candidat au Club
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Décembre 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chef de projet MOA

    Informations forums :
    Inscription : Décembre 2014
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    Bonjour,
    Vous avez très bien compris et ce que vous m'avez écrit m'aide beaucoup.
    j'aimerais encore compléter ma question : en fait le champ sur lequel je fais la somme est dans une autre table que celle que je parcoure :
    exemple illustratif : une table FACTURE dans laquelle se trouvent dans chaque ligne un article acheté avec cette facture et une table ARTICLE dans laquelle se trouvent tous les articles et leur prix.
    j'aimerais donc faire le total de la facture mais la table ne contient pas les prix mais seulement le lien vers la table article.
    merci de votre patience et bravo pour vos compétences !!

  4. #4
    Expert éminent

    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    3 840
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations forums :
    Inscription : Mai 2012
    Messages : 3 840
    Points : 7 974
    Points
    7 974
    Par défaut
    Bonjour,

    Afin de te faire la main et de comprendre comment fonctionne une application Access, je te propose en pièce jointe une base de données gérant une commande de produits et de livraison qu'on peut facilement transformer en "facturation".

    Bonnes fêtes

    Cordialement,
    Mandresy
    "Je ne sais qu'une chose, c'est que je ne sais rien" Socrate

    N'oublions pas de mettre quand on a trouvé notre bonheur. Soyons sympa pour les futurs heureux.

    Merci, c'est toujours sympa de recevoir des de votre part

  5. #5
    Candidat au Club
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Décembre 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chef de projet MOA

    Informations forums :
    Inscription : Décembre 2014
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    merci pour le code et pour prendre le temps de lire mon problème
    Pour être + concret il ne s'agit pas de facture, j'aimerais traduire cette requête en code VBA

    en effet, le Prixabonnenment ne se trouve pas dans la table Abonnement et c'est ce qui me pose problème dans l'instruction DSUM car je dois parcourir chaque ligne de la table abonnement et non pas de Type de Massage où se trouve le prix ...

    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SELECT Abonnement.[date validité], Sum([Type de massages].Prixabonnement) AS SommeDePrixabonnement, Abonnement.Payé
    FROM [Type de massages] INNER JOIN Abonnement ON [Type de massages].nomassage = Abonnement.massage
    GROUP BY Abonnement.[date validité], Abonnement.Payé
    HAVING (((Abonnement.[date validité])=DateAdd("m",6,[Form].[dateSoin])) AND ((Abonnement.Payé)=True))
    ORDER BY Abonnement.[date validité];

    nb : cette requête est évidemment générée automatiquement, je n'ai pas la prétention d'en être l'auteur ... mais du coup j'arrive à afficher le résultat (dans un contrôle de type liste) mais pas à le récupérer (le prix total) dans une autre variable que je pourrais additionner et stocker

    je serais étonné que ce soit clair mais on ne sait jamais ...

    Bonnes fêtes à vous aussi

  6. #6
    Expert éminent

    Homme Profil pro
    Inscrit en
    Mai 2012
    Messages
    3 840
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations forums :
    Inscription : Mai 2012
    Messages : 3 840
    Points : 7 974
    Points
    7 974
    Par défaut
    Bonjour,

    Si j'ai bien compris, tu as une requête qui calcule le total des prix des abonnements payés dans SommeDePrixabonnement selon un certain critère.
    Ma proposition :
    1- Créer une requête R1 (si ce n'est pas déjà fait) à partir de ton code dans la QBE (Création de requête sous Access, tu vas en mode SQL et colles le code).
    2- Tu récupères la somme des valeurs de SommeDePrixabonnement avec la fonction DSum utilisée de la forme :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    = DSum("[SommeDePrixabonnement]";"[R1]")
    Tu peux utiliser cette valeur dans un code VBA ou dans un contrôle de formulaire.

    Cordialement et bonnes fêtes
    Mandresy
    "Je ne sais qu'une chose, c'est que je ne sais rien" Socrate

    N'oublions pas de mettre quand on a trouvé notre bonheur. Soyons sympa pour les futurs heureux.

    Merci, c'est toujours sympa de recevoir des de votre part

  7. #7
    Candidat au Club
    Homme Profil pro
    Chef de projet MOA
    Inscrit en
    Décembre 2014
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chef de projet MOA

    Informations forums :
    Inscription : Décembre 2014
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    Super, c'est tout à fait ça ! et ça marche !
    MERCI ! et bonne soirée de fête

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

Discussions similaires

  1. Réponses: 4
    Dernier message: 06/04/2014, 12h32
  2. Réponses: 9
    Dernier message: 07/08/2013, 18h52
  3. [IP-2007] Récupérer le résultat de l'exécution d'une requête sous Infopath 2007
    Par imothepe_33 dans le forum InfoPath
    Réponses: 1
    Dernier message: 05/07/2011, 14h17
  4. Réponses: 3
    Dernier message: 03/07/2010, 17h31
  5. Transformer les résultats d'une requête dans un autre ordre
    Par keikun dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 12/04/2006, 16h29

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