Formule excel pour trouver la correspondance d'une donnée

Polo911 -  
cousinhub29 Messages postés 1112 Date d'inscription   Statut Membre Dernière intervention   -

Bonjour,

Ma demande sur l'image 

petite précision le numéro de série en ma possession peut être sur n'importe quel module :(

par avance merci !

Cordialement,


Windows / Chrome 118.0.0.0

12 réponses

Résumé de la discussion

Identifier, à partir d’un numéro de série, le ou les modules où il apparaît, les numéros pouvant être présents sur plusieurs sites et même dans plusieurs colonnes.
Une solution proposée utilise Power Query en transformant les données en deux tableaux structurés (T_Data et T_Rech) puis en fusionnant les requêtes sur "numéro de série" et "Valeur" afin de générer une liste des sites associés.
Le cas échéant, certains numéros peuvent figurer sur deux sites (par exemple 1611 sur 37 et 38) et des méthodes alternatives (formule Excel ou OpenOffice) peuvent être utilisées selon l’environnement.
Le processus suppose Excel version >=2016 (ou équivalents avec add-on) et décrit les étapes pour charger les deux tables, réaliser la fusion et obtenir les résultats directement dans une nouvelle feuille.

Généré automatiquement par IA
sur la base des meilleures réponses
  1. yclik Messages postés 3871 Date d'inscription   Statut Membre Dernière intervention   1 609
     

    Bonsoir

    une piste

    =SI(ESTERREUR(EQUIV(C$7;$A$2:$E$2;0));"";A2)&SI(ESTERREUR(EQUIV(C$7;$A$3:$E$3;0));"";A3)&SI(ESTERREUR(EQUIV(C$7;$A$4:$E$4;0));"";A4)
    
    0
  2. Polo911
     

    Bonjour YcliK, 

    Merci beaucoup pour ton retour, la formule fonctionne bien sur le petit tableau sans problème !! Mais je n'arrive pas à l'appliquer à mon tableau avec beaucoup plus de ligne et de colonnes en Pj les pb que je rencontres sur mon tableau j'ai 4637 ligne et colonne de A à V comme sur les images

    je vais essayer de voir mes erreurs !

    Cordialement,

    0
  3. cousinhub29 Messages postés 1112 Date d'inscription   Statut Membre Dernière intervention   383
     

    Bonjour,

    Selon la version d'Office utilisée, je pense qu'une recherche par le biais de Power Query serait la plus optimisée.

    Si tu pouvais mettre un fichier exemple, exempt de toutes données confidentielles, sur le site cjoint.com (et coller ici le lien), on pourrait voir ce qu'on peut faire.

    Bon appétit


    0
  4. Polo911
     

    Bonjour cousinhub29,

    Je suis un utilisateur de basse excel et Je ne m'y connais pas du tout sur powerquery :-) cela dit ça peut être intéressant de voir son fonctionnement !

    Le fichier est mis sur cijoint.com

    https://www.cjoint.com/c/MJFnGgxqmwY

    Merci  !!!

    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. cousinhub29 Messages postés 1112 Date d'inscription   Statut Membre Dernière intervention   383
     

    Re,

    Tu confirmes donc que tu as une version Excel >=2016, (ou 2010 Pro ou 2013, auquel cas tu pourras télécharger l'Add-on gratuit sur le site de µSoft).

    Dans le fichier joint, j'ai transformé tes 2 plages en Tableaux Structurés (TS) - (tu en avais déjà 1, mais je l'ai renommé)

    - Il y a donc 2 TS, nommés "T_Data" et "T_Rech" (celui listant les numéros de série à retrouver)

    J'ai effectué une requête Power Query pour télécharger les 2 TS (Ruban Données/A partir de tableau ou d'une plage)

    D'abord le premier, puis une fois l'éditeur PQ ouvert, j'ai cliqué sur "Accueil/Fermer et charger dans..." et sélectionné "Connexion uniquement"

    J'ai ensuite chargé le 2ème (même procédure)

    Une fois les 2 TS chargés, j'ai modifié le 1er (T_Data) comme ceci :

    J'ai sélectionné les 2 premières colonnes (Site et Info1), clic droit et "Dépivoter les autres colonnes :

    Terminé pour celui-là..

    J'ai sélectionné le 2ème (T_Rech), et cliqué sur "Fusionner des requêtes/Fusionner des requêtes comme nouvelles"

    A l'ouverture de ce panneau :

    J'ai sélectionné la colonne "numéro de série" de "T_Rech", puis sélectionné "T_Data" dans le menu déroulant juste dessous, et cliqué sur la colonne Valeur

    Puis OK

    Une nouvelle requête a été créée, en cliquant sur la double flèche de "T_Data"

    Tu obtiens tes résultats.

    Ruban "Accueil", Fermer et Charger dans, et sélectionner l'endroit (ou un nouvel onglet) pour afficher ces résultats...

    Bonne découverte de PQ

    https://www.cjoint.com/c/MJFodv7yqo2


    0
  7. Polo911
     

    Bonjour maitre cousinhub29 :),

    Merci beaucoup pour ton aide !!!! 

    et je te souhaite une très bonne fin de journée !!!!

    0
  8. cousinhub29 Messages postés 1112 Date d'inscription   Statut Membre Dernière intervention   383
     

    Re-,

    Juste pour mon information, as-tu réussi?


    0
  9. yclik Messages postés 3871 Date d'inscription   Statut Membre Dernière intervention   1 609
     

    bonsoir

    une autre piste avec colonne intermédiaires

    ici

    0
  10. cousinhub29 Messages postés 1112 Date d'inscription   Statut Membre Dernière intervention   383
     

    Bonsoir yclik...

    Manqueraient pas des "doublons"?

    Et pas un peu "lourd"?

    Et limité en nombre de Lignes/Colonnes?

    Juste pour mon info, quelle version d'Excel utilises-tu?

    Si >= 2016, et si cela t'intéresse, essayer autre chose?

    Bonne soirée


    0
    1. yclik Messages postés 3871 Date d'inscription   Statut Membre Dernière intervention   1 609
       

      bonjour cousinhub29

      je bricole avec open office pour donner des pistes hélas pas toujours compatible avec excel

      0
  11. Polo911
     

    Bonjour Cousinhub29 & yclick,

    @cousinhub29 : Je n'ai pas encore eu le temps d'essayer je t'avoue mais promis je vais essayer dès que j'aurai un peu de temps et te faire un retour !

    @Yclick : Merci pour ton retour , je vais également essayer ta méthode !

    Merci à vous 2 !

    Cordialement,

    0
  12. Polo911
     

    Bonjour cousinhub29,

    j'ai essayé de refaire ta procédure 

    au final moi j'ai que la colonne N° série qui apparait :( j' ai dû loupé un truc j'essaierai de refaire.

    Par contre dans ton tableau final ci-dessous j'ai des cas ou le numéro de série se trouve sur 2 sites ex : le 1611 sur le 37 & 38 ce qui est pas normal ?

    Cordialement,

    0
  13. cousinhub29 Messages postés 1112 Date d'inscription   Statut Membre Dernière intervention   383
     

    Bonjour,

    Dans ton fichier exemple, ces numéros de série se retrouvent effectivement dans 2 colonnes différentes...

    Dans les cellules G15 et Q14

    Donc c'est normal (et j'oserais dire, heureusement :) )

    Par contre, je pense que tu n'as effectivement pas du suivre exactement le processus, mais tu vas y arriver. Sinon, mets le code généré dans l'éditeur avancé

    Dans mon fichier, le code généré :

    Pour la requête T_Final (qu'on aperçoit en bas) :

    let
        Source = Table.NestedJoin(T_Rech, {"Numero série"}, T_Data, {"Valeur"}, "T_Data", JoinKind.LeftOuter),
        #"T_Data développé" = Table.ExpandTableColumn(Source, "T_Data", {"Site"}, {"Site"})
    in
        #"T_Data développé"

    Pour la requête T_Data :

    let
        Source = Excel.CurrentWorkbook(){[Name="T_Data"]}[Content],
        #"Supprimer le tableau croisé dynamique des autres colonnes" = Table.UnpivotOtherColumns(Source, {"Site", "Info1"}, "Attribut", "Valeur")
    in
        #"Supprimer le tableau croisé dynamique des autres colonnes"

    Et pour la requête T_Rech :

    let
        Source = Excel.CurrentWorkbook(){[Name="T_Rech"]}[Content]
    in
        Source

    Bon courage


    0