Contact: 514-605-7112 / info@lecfomasque.com

Qu’est-ce que le Fuzzy Lookup?

Publié le : 25 octobre 2018

Je me souviens encore du moment où j’ai découvert le Add-in Fuzzy Lookup pour Excel. On m’avait mise en charge d’un projet. En gros, l’entreprise utilisait un CRM dans lequel le nom des clients était entré manuellement par les préposés qui prenaient les appels. Il n’y avait pas de clé unique pour identifier un client. Ce faisant, chaque préposé entrait l’information de différentes façons dans le système. Comme l’entreprise a roulé sur l’or pendant des années, ce n’était pas problématique, mais quand les activités ont commencé à sérieusement ralentir, les dirigeants se sont soudainement intéressés aux chiffres. Il était alors impossible de répondre à une question aussi simple que: Combien le client x a-t-il dépensé chez nous en 2017?… Évidemment, ce genre de situation devrait toujours être réglée à la base, i.e. en corrigeant les informations à la source et en structurant ensuite le système pour utiliser une clé unique par client. Ici, l’entreprise m’avait mandatée non seulement pour créer des clés uniques pour chaque client mais en plus, pour comparer les dépenses de ces clients au sein de l’entreprise vs des statistiques concernant les investissements totaux de chacun de ces clients (non seulement au sein de l’entreprise mais aussi chez les compétiteurs). Au final, on souhaitait comprendre quelle portion du portefeuille de chaque client l’entreprise allait chercher. Et on souhaitait aussi voir la part de marché à laquelle l’entreprise ne touchait pas encore. Donc, en résumé, dans ce projet, j’avais 2 tâches colossales. D’abord, je devais créer une clé unique par client (on parlait de dizaines de milliers de clients) et ensuite créer une table de correspondances pour jumeler tous ces noms de clients uniques à ceux de l’institut statistique. On est venu vers moi à l’époque, à cause de mes compétences Excel. J’avais beau expliquer que dans la situation, ça prenait plus que des compétences Excel, l’entreprise persistait. J’ai donc pris en charge le projet…

 

Défis de mon mandat

Tel que précisé en introduction, je faisais fasse à 2 problématiques majeures dans ce projet:

  1. Je devais m’assurer que chaque client du CRM réponde à une clé unique individuelle. Par exemple, Bombardier et Bombardier inc. sont un seul et même client et devaient être regroupés sous la même clé unique.
  2. Je devais construire une table de correspondances entre ces clients uniques et les clients de l’institut statistique.
Réconciliation de données

 

Algorythmes personnalisés dans Excel

Au départ, j’ai entamé ce projet en créant mes propres algorythmes dans Excel, à l’aide de fonctions variées. Je regardais par exemple, les correspondances entre les 5 premières lettes de chaque nom de clients, etc. Mais à chaque fois, même si je trouvais beaucoup de correspondances, je devais faire le ménage manuellement. À l’époque, j’utilisais Excel 2007. Je m’en souviens encore. C’était l’ordinateur de l’entreprise. Au bout de 3 semaines à travailler 12 heures par jour sur ce projet, mon ordinateur a rendu l’âme! Je l’avais sursollicité!!!

Ordinateur sursollicité

 

Revirement de situation

Ne baissant les bras devant rien, j’ai fouillé les forums et c’est là que j’ai entendu parler du add-in Fuzzy Lookup. Cet add-in m’a permis d’accomplir la tâche colossale qui m’avait été confiée de façon beaucoup plus efficace même s’il restait une portion importante de travail à effectuer manuellement.

Fuzzy lookup for Excel

 

Fuzzy lookup pour Power Query

Quelle ne fût pas ma surprise lorsque j’ai découvert l’introduction du Fuzzy Lookup dans la mise à jour Power BI d’octobre! Cette fonctionnalité est accessible à travers l’éditeur de requêtes Power Query, au moment de fusionner deux tables entre elles. Il est donc raisonnable de penser que cette fonctionnalité, une fois bien intégrée dans Power BI, sera aussi disponible dans l’éditeur de requêtes Power Query d’Excel et viendra donc remplacer l’ancien add-in Fuzzy Lookup.

 

Fonctionnement du Fuzzy Lookup

Pour illustrer le fonctionnement du Fuzzy Lookup, je vais utiliser un exemple qui ressemble beaucoup à ce que j’ai vécu dans mon mandat. D’abord, on retrouve une table avec différentes façons d’entregistrer la compagnie Bombardier. Ensuite, on retrouve le nom de l’entreprise, tel qu’il aurait dû être rédigé. Ce faisant, on cherche à faire une recherche fuzzy ou approximative du mot Bombardier dans la liste de clients.

À réconcilier

 

J’ai fait quelques essais pour bien comprendre la portée des options offertes.

 

Par exemple, ci-dessous, je définis le seuil de similarité à 80% (seuil par défaut) et je demande d’ignorer la casse.

Fuzzy lookup - Power Query

J’obtiens 3 résultats sur 7.

Fuzzy lookup - Power Query

 

Au deuxième essai, je baisse le seuil de similarité à 40% (pour avoir plus de chances d’attraper d’autres noms) et je ne demande pas d’ignorer les espaces.

Fuzzy lookup - Power Query

 

J’obtiens un résultat de plus, soit Bombardier inc.

Fuzzy lookup - Power Query

 

Au troisième essai, je demande un seuil de similarité de 100%, simplement par curiosité.

Fuzzy lookup - Power Query

On me retourne la ligne où Bombardier est écrit exactement de la même façon. Pas de surprise ici.

Fuzzy lookup - Power Query

 

Forte de ces connaissances, j’y vais le tout pour le tout et je définis le seuil de similarité à 0 puis je demande de ne pas ignorer les espaces.

Fuzzy lookup - Power Query

J’obtiens ainsi 7 résultats sur 7.

Fuzzy lookup - Power Query

 

Je me suis donc demandé ce qui se passerait si j’ajoutais des noms d’autres clients. J’ai donc fait le même Fuzzy Lookup que celui ci-dessus mais à partir de la table suivante:

Table de données

 

J’ai obtenu le même résultat que ci-dessus, ce qui signifie que 0% de similarité n’est pas tout à fait 0. Il est difficile de bien comprendre ce qui se cache derrière le Fuzzy Lookup mais chose certaine, gageons que plusieurs entreprises seront fort reconnaissantes de son arrivée dans Power BI et on l’espère aussi, bientôt dans Excel, via Power Query.

 

Le Fuzzy Lookup ne fera pas tout le travail pour vous. Je continue d’affirmer qu’il faut corriger les données à la source. Mais dans le cas où vous devez justement faire ces corrections, le Fuzzy Lookup vous sera d’un très grand support.

 

Fin de mon histoire

Après avoir finalement abouti à un résultat impeccable avec le Fuzzy Lookup, beaucoup de jus de bras et un début de tendinite et de folie, l’entreprise a décidé qu’il n’était pas nécessaire de changer les informations de son CRM pour inclure les clés uniques de clients. Je crois qu’elle pensait que je referais le même travail chaque année. Mais l’année suivante, lorsqu’elle m’a demandé si je souhaitais refaire cette analyse à contrat, j’ai gentiment refusé…

 


NOTRE OFFRE DE FORMATIONS


Microsoft Most Valuable Professional

Le CFO masqué vous offre un vaste choix de formations Excel et Power BI, réparties dans 8 catégories: Excel – Tableaux de bord, Excel – Modélisation financière, Excel – VBA, Excel – Power Tools, Excel – Ninja, Power BI, Finance corporative et Compléments avancés. Ces formations sont offertes en classe, en entreprise et en ligne. Nos formateurs sont des experts dans leur domaine et ils sont accrédités par Emploi-Québec et vous remettent un certificat, à la fin de chaque formation, que vous pouvez notamment utiliser pour faire reconnaître des heures de formation continue auprès de votre ordre professionnel.

 

Découvrez quelles formations vous conviennent

Pour info: 514-605-7112 ou info@lecfomasque.com

 

Sophie Marchand

Sophie Marchand, M.Sc., CPA, CGA, MVP, est détentrice d’une M.Sc. en finance corporative et d’un titre comptable CPA, CGA. Elle est également MVP Office Apps and Services (Excel) et MVP Data Platform (Power BI). Le titre de MVP est un titre honorifique remis par Microsoft et signifie « Most Valuable Professional ». Il est attribué à des experts de solutions Microsoft qui se distinguent non seulement par leurs compétences mais également par leur implication dans la communauté. Seuls 4 professionnels possèdent cette double-qualification dans le monde. Mme Marchand cumule de nombreuses années d’expérience dans le milieu des affaires et se spécialise en modélisation financière et en intelligence d’affaires avec Excel et Power BI. Après avoir longtemps offert ses services comme consultante, elle se consacre désormais à la formation, sous toutes ses formes (formations en classe, formations en ligne, formations en entreprise, webinaires, animation de groupe d'usagers, rédaction d'articles de blogue, animation de forum en ligne et plus encore). Vous pouvez d'ailleurs la retrouver à la tête du groupe d'usagers Montreal Modern Excel and Power BI.

  • réponse Nicolas B ,

    Bonjour Sophie,
    Excellent article comme d’habitude. J’avoue que j’ai souri à la lecture de votre émotion en découvrant cette fonction pour avoir même été face à un mur similaire que Fuzzy m’a permis de percer assez facilement (même sinavec encore ine bonne dose de manualités). Il s’aggissait dans mon cas de 2 bases d’employés avec des noms, des codes d’employé, des filiales et des sites différents. Je pense qu’il serait interessant de mentionner la recherche fuzzy sur plusieurs champs croisés avec une définition du “fuzzy” paramétrable pour chaque champs (par exemple : pays1 exact avec pays2, nom1 80% avec nom2 etc…)
    Avec mes félicitations pour l’ensemble de votre travail.
    Cdlmt,
    Nico B

    • réponse Julien ,

      Merci beaucoup pour ce retour d’expérience passionnante !
      Quand j’ai lu  » l’entreprise a décidé qu’il n’était pas nécessaire de changer les informations de son CRM pour inclure les clés uniques de clients Je crois qu’elle pensait que je referais le même travail chaque année. Mais l’année suivante, lorsqu’elle m’a demandé si je souhaitais refaire cette analyse à contrat, j’ai gentiment refusé… », j’ai bien rigolé

      Merci et Bravo Sophie pour votre travail !
      Julien

      Laisser un commentaire