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 :

Fonction de domaine


Sujet :

Access

  1. #1
    Membre à l'essai
    Homme Profil pro
    fonctionnaire
    Inscrit en
    Décembre 2011
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : fonctionnaire
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2011
    Messages : 28
    Points : 16
    Points
    16
    Par défaut Fonction de domaine
    Bonjour,
    J'ai besoin de vous. Voici mon problème:
    j'ai un nombre de participants par session (clés multiples). Ils participent à des ateliers durant ces sessions dans le temps. Hors, je voudrais connaitre le nombre d'ateliers pour l'ensemble des sessions.
    Si je fais un CpteDom(), il me met automatiquement le nombre de participants pour ces mêmes ateliers. J'ai créé je ne sais combien de requêtes mais bon...rien
    Ma table : participants (clé), session (clé), ateliers (table liée). Ce doit être sans doute simple mais là, je ne vois pas.
    Merci d'avance.

  2. #2
    Membre à l'essai
    Homme Profil pro
    fonctionnaire
    Inscrit en
    Décembre 2011
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : fonctionnaire
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2011
    Messages : 28
    Points : 16
    Points
    16
    Par défaut
    Je ne suis qu'un idiot Désolé pour cette discussion qui n'en est pas une. C'était la propriété de la jointure le problème.

  3. #3
    Membre à l'essai
    Homme Profil pro
    fonctionnaire
    Inscrit en
    Décembre 2011
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : fonctionnaire
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2011
    Messages : 28
    Points : 16
    Points
    16
    Par défaut
    Bonjour à tous,
    J'ai encore un problème avec ces maudites fonctions de domaine. Pourquoi je m'acharne mais bon je suis têtu
    Grace à ma table nomjour :
    nom + session + jour (trois clés) + atelier, j'ai fait une requête :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT tblAtelier.Atelier, tblAtelier.NbrMax, nomjour.session
    FROM tblSession, TblNbr, tblAtelier INNER JOIN nomjour ON tblAtelier.[Atelier] = nomjour.[atelier]
    GROUP BY tblAtelier.Atelier, tblAtelier.NbrMax, nomjour.session;
    Elle me donne tout ce que je voudrais: le nbre théorique de participants à un atelier lors d'une session.
    Pourtant, j'ai créé un formulaire indépendant pour des stats... J'utilise deux zones de listes comme filtre cela me donne:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =CpteDom("NbrMax";"RqtNbr2";"[session] ='" & [sessionlst] & "'" Et "[Atelier]='" & [atelierlst2] & "'")
    J'ai mis cpteDom par défaut, j'ai tout essayé, le résultat n'est pas bon
    Merci d'avance

  4. #4
    Membre actif
    Homme Profil pro
    Inscrit en
    Mars 2009
    Messages
    408
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Eure et Loir (Centre)

    Informations professionnelles :
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Mars 2009
    Messages : 408
    Points : 216
    Points
    216
    Par défaut
    Bonjour
    et comme ceci es que cela marche :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =CpteDom("NbrMax";"RqtNbr2";"[session] ='" & [sessionlst] & "' and [Atelier]='" & [atelierlst2] & "'")
    cordialement

  5. #5
    Membre à l'essai
    Homme Profil pro
    fonctionnaire
    Inscrit en
    Décembre 2011
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : fonctionnaire
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2011
    Messages : 28
    Points : 16
    Points
    16
    Par défaut
    Merci.
    Malheureusement j'ai déjà essayé, il me renvoie le chiffre 1.
    Dans ma requête, on voit apparaitre pour l'atelier sport 16 participants et 14 pour une activité manuelle en session 1.

  6. #6
    Membre à l'essai
    Homme Profil pro
    fonctionnaire
    Inscrit en
    Décembre 2011
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : fonctionnaire
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2011
    Messages : 28
    Points : 16
    Points
    16
    Par défaut
    Re bonjour
    avec un:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =CpteDom("[atelier]";"RqtNbr";"[Session] ='" & [sessionlst] & "'")
    J'ai le nombre d'ateliers par session mais un problème pour le nombre théorique par atelier de participants
    Cordialement,

  7. #7
    Membre à l'essai
    Homme Profil pro
    fonctionnaire
    Inscrit en
    Décembre 2011
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : fonctionnaire
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2011
    Messages : 28
    Points : 16
    Points
    16
    Par défaut
    En fait quand je fais "compte" sur le nombre maximum théorique de participants dans ma requête, il me trouve un nombre de participants étonnants au lieu de 16 (sport) par session.
    Ma requête est donc bancale, je pense ou que je devrais plutôt me pencher sur une recherche qui me donnera le chiffre grâce à la requête, non ?
    Cordialement,

  8. #8
    Membre à l'essai
    Homme Profil pro
    fonctionnaire
    Inscrit en
    Décembre 2011
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : fonctionnaire
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2011
    Messages : 28
    Points : 16
    Points
    16
    Par défaut
    Bonsoir
    Voici une autre requête peu différente appelée "RqtNbr4", certes

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT nomjour.Nom, nomjour.Jour, nomjour.session, nomjour.atelier, tblAtelier.NbrMax
    FROM tblSession, TblNbr, tblAtelier INNER JOIN nomjour ON tblAtelier.Atelier = nomjour.atelier
    GROUP BY nomjour.Nom, nomjour.Jour, nomjour.session, nomjour.atelier, tblAtelier.NbrMax;
    Avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =CpteDom("NbrMax";"RqtNbr4";"[session] ='" & [sessionlst] & "' and  [atelier] ='" & [atelierlst2] & "'")
    Le résultat me donne l'effectif réel par session et par atelier or dans ma requête, j'ai bien le nombre théorique (tblAtelier.NbrMax)
    Je ne sais plus quoi faire...........
    Cordialement,

  9. #9
    Rédacteur/Modérateur
    Avatar de Jeannot45
    Homme Profil pro
    Retraité
    Inscrit en
    Octobre 2004
    Messages
    3 871
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 871
    Points : 8 489
    Points
    8 489
    Par défaut


    Pourrais-tu mettre un extrait de ta base qui nous permettrait de voir in situ le problème que tu rencontres afin d'être plus efficace dans la réponse à apporter ?
    Jeannot

    Liens Office indispensables à visiter: Cours (Tutos), F.A.Q., Sources VBA

    Ne posez pas de questions par MP, je n'ai pas le temps d'y répondre

  10. #10
    Membre à l'essai
    Homme Profil pro
    fonctionnaire
    Inscrit en
    Décembre 2011
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : fonctionnaire
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2011
    Messages : 28
    Points : 16
    Points
    16
    Par défaut
    Bonsoir
    Voici un extrait de ma base. le formulaire est un formulaire récapitulatif. On voit qu'en bas (rectangle rouge) il devrait y avoir la possibilité de trouver le nombre théorique d'enfants par atelier et par session.
    Euh là, ce n'est pas le cas.
    pourDevel.zip
    Merci pour votre aide encore.

  11. #11
    Rédacteur/Modérateur
    Avatar de Jeannot45
    Homme Profil pro
    Retraité
    Inscrit en
    Octobre 2004
    Messages
    3 871
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 871
    Points : 8 489
    Points
    8 489
    Par défaut


    Je te joins ta base que j'ai un peu modifier pour répondre à ton problème.

    1) j'ai modifier les noms de 3 champs afin d'éviter la confusion plus tard. (Il faut éviter le nom de champ du type "Nom" qui est un mot réservé pour la programmation). D'autre part, le fait de l'avoir utilisé dans deux tables différentes, cela aurait encore ajouter à la confusion. J'ai donc renommé
    1. La table nomjour en tblNomjourNom
    2. Le champ Nom de la table tblNomjour en NomJour
    3. Le champ Nom de la table tblEleve en NomElève
    4. J'ai fait en sorte que les deux champs liés aient le même nom. En l'occurence : CodeEleve (tu devrait faire pareil pour tes autres relations)


    Au niveau de la base, j'ai également modifié
    1. La requete "RqtNbr" - Le regroupement n'est pas nécessaire. Il suffit de mettre la propriété de la requete "Valeurs distinctes" sur OUI
    2. La requete "RqtrNbr3" - j'ai ajouté la table "tbleleve" et ajouté le champ "CodeEleve" sur lequel j'ai fait un compte


    Au niveua du formulaire, j"'ai également apporté quelques modifications
    1. sur la liste déroulante : atelierlst2, j'ai changé la source et y ai mis la requête RqtNbr3 en modifiant bien-sur les propriétés : Nbre de colonnes (4), et largeur de colonnes (2,54;0;0;0)
    2. sur le champ Texte94 : la source contrôle devient : =[atelierlst2].[column](2)
    3. sur le champ Texte96 : la source contrôle devient : =[atelierlst2].[column](3)
    4. sur le champ Texte98 : la source contrôle devient : =Nz(Round([Texte96]/[Texte94];2)*100;0) & " %" (j'ai inversé les membres de l'opération pour avoir le calcul de pourcentage dans le bon sens )


    Ne connaissant pas trop ta problématique, je ne porte pas de jugement sur les tables que tu as créées.
    Je te souhaite bonne continuation.
    Fichiers attachés Fichiers attachés
    Jeannot

    Liens Office indispensables à visiter: Cours (Tutos), F.A.Q., Sources VBA

    Ne posez pas de questions par MP, je n'ai pas le temps d'y répondre

  12. #12
    Membre à l'essai
    Homme Profil pro
    fonctionnaire
    Inscrit en
    Décembre 2011
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : fonctionnaire
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2011
    Messages : 28
    Points : 16
    Points
    16
    Par défaut
    bonjour,
    Merciiiiiiiiiiii pour ces correction. Euh pour pour le calcul du pourcentage, je suis confus.
    Cela reste toujours le problème : Voir cadre en rouge dans le formulaire. [Texte94 ]
    Mon filtre devrait être pour [Texte94] atelierlst2 et listSession donc NbrMax qui est le nombre théorique par session et par atelier.
    "champ Texte94 : la source contrôle devient : =[atelierlst2].[column](2)", je l'ai supprimée. Oui car la liste [atelierlst2] est préférable pour moi avec un regroupement des ateliers.

    J'espère que l'extrait de la base sera plus clair:


    Cordialement,
    Fichiers attachés Fichiers attachés

  13. #13
    Rédacteur/Modérateur
    Avatar de Jeannot45
    Homme Profil pro
    Retraité
    Inscrit en
    Octobre 2004
    Messages
    3 871
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 871
    Points : 8 489
    Points
    8 489
    Par défaut


    J'ai modifié la requête RqtAtelier pour la rendre dépendante de la "sessionlst"
    je te joins la la base.

    Bonne continuation
    Fichiers attachés Fichiers attachés
    Jeannot

    Liens Office indispensables à visiter: Cours (Tutos), F.A.Q., Sources VBA

    Ne posez pas de questions par MP, je n'ai pas le temps d'y répondre

  14. #14
    Membre à l'essai
    Homme Profil pro
    fonctionnaire
    Inscrit en
    Décembre 2011
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : fonctionnaire
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2011
    Messages : 28
    Points : 16
    Points
    16
    Par défaut
    Bonjour,
    C'est magnifique!
    J'ai rajouté le nombre théorique dans la requête, avec un petit ".requery" après sessionlst histoire qu'il me mette les ateliers spécifiques à chaque session.
    Les fonctions de domaine, c'est fini pour moi ! Trop limitées, le bazarre...
    En tous cas, Chapeau bas !
    Cordialement,

  15. #15
    Rédacteur/Modérateur
    Avatar de Jeannot45
    Homme Profil pro
    Retraité
    Inscrit en
    Octobre 2004
    Messages
    3 871
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 871
    Points : 8 489
    Points
    8 489
    Par défaut


    Les fonctions de domaine, c'est fini pour moi ! Trop limitées, le bazare...
    Pas d'accord, elles ont toute leur place dans les applications.
    Peut-être as-tu été compliqué dans ta conception ?

    Heureux que tu aies trouvé réponse à ton souci

    Bonne continuation
    Jeannot

    Liens Office indispensables à visiter: Cours (Tutos), F.A.Q., Sources VBA

    Ne posez pas de questions par MP, je n'ai pas le temps d'y répondre

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

Discussions similaires

  1. Blocage sur la fonction de domaine DLookup
    Par pimst37 dans le forum VBA Access
    Réponses: 3
    Dernier message: 20/02/2008, 13h46
  2. Réponses: 0
    Dernier message: 05/12/2007, 14h13
  3. Fonction de domaine
    Par jmde dans le forum Access
    Réponses: 1
    Dernier message: 07/11/2007, 19h58
  4. Réponses: 0
    Dernier message: 28/09/2007, 10h40
  5. Fonction de domaine - Calcul de cumul avec filtre "date et heure".
    Par Fabrice7627 dans le forum Requêtes et SQL.
    Réponses: 8
    Dernier message: 25/08/2007, 05h16

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