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 :

Recherche doublons sur plusieurs colonnes [AC-2010]


Sujet :

Access

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2014
    Messages : 18
    Points : 20
    Points
    20
    Par défaut Recherche doublons sur plusieurs colonnes
    Bonjour à tous,

    Dans le cadre d'un projet, j'aimerai pouvoir rechercher les doublons sur plusieurs colonnes avec leur quantité pour afficher les dix pièces qui apparaissent le plus.

    Voici comment sont organisées les colonnes de la table qui m'intéressent :
    Pièce1 - Qte1 - Pièce2 - Qte2 - Pièce3 - Qte3
    02124 - 6 - 24589 - 3 - 15424 - 1
    03144 - 2 - 15424 - 8 - 25654 - 9
    17894 - 3 - 56247 - 3 - 25654 - 2
    15424 - 2 - 45897 - 7 - 25654 - 9

    Par exemple pour le modèle de pièce 15424 je dois avoir 11 apparitions. Et ainsi de suite pour chaque modèle pour pouvoir afficher les 10 premiers.

    J'espère avoir été assez clair, sinon n'hésitez pas a me demander plus de détails

    Merci d'avance pour vos réponses.

  2. #2
    Expert confirmé Avatar de Richard_35
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    3 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 3 121
    Points : 4 596
    Points
    4 596
    Par défaut
    Bonjour David_18,

    Il faut passer d'une représentation horizontale à une représentation verticale. A savoir, passer d'une table :
    Piece(Piece1, Qte1, Piece2, Qte2, Piece3, Qte3,...)
    à une table :
    Piece_a_analyser(Piece, Qte)

    Suggestion :
    • 1 requête "création de table" qui stocke uniquement {Piece1, Qte1} dans {Piece, Qte} ;
    • 1 requête "Ajout" qui stocke uniquement {Piece2, Qte2} dans {Piece, Qte} ;
    • 1 requête "Ajout" qui stocke uniquement {Piece3, Qte3} dans {Piece, Qte}.


    Ensuite, analyser Piece_a_analyser groupée par Piece avec somme des Qte.
    Dis-nous et à bientôt,
    Richard.
    ----------------------------------------------------------------------------------------------
    En cas de résolution, et afin de faciliter la tâche des bénévoles, merci de cliquer sur .
    et permettent aux forumeurs de cibler leur recherche dans une discussion : n'hésitez pas à voter !

  3. #3
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2014
    Messages : 18
    Points : 20
    Points
    20
    Par défaut
    Tout d'abord merci pour votre réponse aussi rapide

    Très bien je vois le principe. Je vais tester comme cela et je viendrai vous donner des nouvelles.

  4. #4
    Expert confirmé Avatar de Richard_35
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    3 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 3 121
    Points : 4 596
    Points
    4 596
    Par défaut
    En annexe, il faudrait s'intéresser à la conception initiale dont a découlé la création de cette table "horizontale"... si tu la peux "verticaliser", cela simplifiera les choses à tous les niveaux.

    Si les colonnes sont un statut des pièces, la table peut de définir comme suit :
    Piece(#Piece, Statut, Qte, ...)
    Dis-nous et à bientôt,
    Richard.
    ----------------------------------------------------------------------------------------------
    En cas de résolution, et afin de faciliter la tâche des bénévoles, merci de cliquer sur .
    et permettent aux forumeurs de cibler leur recherche dans une discussion : n'hésitez pas à voter !

  5. #5
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2014
    Messages : 18
    Points : 20
    Points
    20
    Par défaut
    Je ne peux pas changer l'aspect de la table, mais je pense qu'avec les requête création de table et les deux ajouts je devrais pouvoir m'en sortir comme je veux.

    Lorsque les données de ma table principale seront mises à jour, est ce que la table T_Pièces_a_Analiser le sera aussi ? Ou faut-il relancer à chaque fois les trois requêtes (création et ajout) ?

  6. #6
    Expert confirmé Avatar de Richard_35
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    3 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 3 121
    Points : 4 596
    Points
    4 596
    Par défaut
    Citation Envoyé par David_18
    Lorsque les données de ma table principale seront mises à jour, est ce que la table T_Pièces_a_analyser le sera aussi ? Ou faut-il relancer à chaque fois les trois requêtes (création et ajout) ?
    ==> aucun automatisme, si tu ne le programmes pas toi-même. Si Piece_a_analyser existe déjà, il faudra la supprimer pour lancer les trois requêtes décrites précédemment.
    Dis-nous et à bientôt,
    Richard.
    ----------------------------------------------------------------------------------------------
    En cas de résolution, et afin de faciliter la tâche des bénévoles, merci de cliquer sur .
    et permettent aux forumeurs de cibler leur recherche dans une discussion : n'hésitez pas à voter !

  7. #7
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2014
    Messages : 18
    Points : 20
    Points
    20
    Par défaut
    D'accord moi j'aurai voulu que tout se mette à jour directement. N'est-il pas possible d'automatiser cette tâche ?

  8. #8
    Expert confirmé Avatar de Richard_35
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    3 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 3 121
    Points : 4 596
    Points
    4 596
    Par défaut
    Citation Envoyé par David_18
    N'est-il pas possible d'automatiser cette tâche ?
    ==> c'est possible en passant par une macro et en affectant un bouton à cette macro.

    Macro :
    • requête "suppression" de Piece_a_analyser (supprime tous les enregistrements de la table) ;
    • requête "Ajout" qui stocke uniquement {Piece1, Qte1} dans {Piece, Qte} ;
    • requête "Ajout" qui stocke uniquement {Piece2, Qte2} dans {Piece, Qte} ;
    • requête "Ajout" qui stocke uniquement {Piece3, Qte3} dans {Piece, Qte}.

    Tu devrais posséder tous les éléments pour travailler...
    Dis-nous et à bientôt,
    Richard.
    ----------------------------------------------------------------------------------------------
    En cas de résolution, et afin de faciliter la tâche des bénévoles, merci de cliquer sur .
    et permettent aux forumeurs de cibler leur recherche dans une discussion : n'hésitez pas à voter !

  9. #9
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2014
    Messages
    18
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2014
    Messages : 18
    Points : 20
    Points
    20
    Par défaut
    Merci beaucoup je vais essayer de procéder comme ça

  10. #10
    Expert confirmé Avatar de Richard_35
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    3 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 3 121
    Points : 4 596
    Points
    4 596
    Par défaut
    ... sans oublier d'appuyer sur le bouton "Résolu".
    Dis-nous et à bientôt,
    Richard.
    ----------------------------------------------------------------------------------------------
    En cas de résolution, et afin de faciliter la tâche des bénévoles, merci de cliquer sur .
    et permettent aux forumeurs de cibler leur recherche dans une discussion : n'hésitez pas à voter !

  11. #11
    Expert éminent sénior

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311
    Par défaut
    Il est aussi possible d'utiliser des requêtes UNION pour remettre en ordre la table.

    SELECT piece1,qte1 FROM maTable UNION SELECT piece2,qte2 FROM MaTable

  12. #12
    Expert confirmé Avatar de Richard_35
    Homme Profil pro
    Inscrit en
    Juillet 2007
    Messages
    3 121
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Juillet 2007
    Messages : 3 121
    Points : 4 596
    Points
    4 596
    Par défaut
    Citation Envoyé par Tofalu
    SELECT piece1,qte1 FROM maTable UNION SELECT piece2,qte2 FROM MaTable
    ==> c'est, effectivement, beaucoup plus élégant ! Merci Tofalu !

    Je ne maîtrise pas trop la chose... l'important, pour David, était de "sentir" qu'il fallait passer d'une représentation "horizontale" à une représentation "verticale".
    Dis-nous et à bientôt,
    Richard.
    ----------------------------------------------------------------------------------------------
    En cas de résolution, et afin de faciliter la tâche des bénévoles, merci de cliquer sur .
    et permettent aux forumeurs de cibler leur recherche dans une discussion : n'hésitez pas à voter !

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

Discussions similaires

  1. [XL-2003] Recherches d’occurrences sur plusieurs colonnes
    Par mandela9857 dans le forum Conception
    Réponses: 7
    Dernier message: 04/03/2013, 20h59
  2. doublons sur plusieurs colonnes
    Par sheira dans le forum Débuter
    Réponses: 25
    Dernier message: 01/12/2010, 09h37
  3. Filtrer les doublons sur plusieurs colonnes
    Par henri228 dans le forum Conception
    Réponses: 2
    Dernier message: 07/05/2010, 22h21
  4. rechercher remplacer sur plusieurs colonnes
    Par deca2 dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 23/05/2008, 11h57
  5. [VBA-E] Recherche sur plusieurs colonnes ?
    Par Kokito dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 14/11/2006, 13h27

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