Fonction croiser infos si contient texte similaire

Bonjour,

J'ai 2 fichiers, l'un contient simplement le nom des sociétés, l'autre contient le nom des sociétés + d'autres éléments.

L'idée est de rapatrié des infos depuis le fichier 2 vers le fichier 1 sauf que les cellules contenant le dénominateur commun qui est censé être le nom de la société n'est pas identique.

Je cherche une formule qui va m'aider avec une conditien de texte qui contiendrai le nom de la société n'est pas identique.

Par exemple, je cherche à rapatrié les données du fichier 2 dans le fichier 1 à l'aide de la 1ère colonne. Quelle fonction pourrait aider? Le dénominateur commun ici les la société "Lelavandou". Le fichier est également en pièce jointe. Merci!

22exemple.xlsx (10.03 Ko)

Fichier 1

Date de départDate de finCritèreCritère
Lelavandou

Fichier 2

SociétéDate de départDate de finCritère
56 - Lauria; xxx; Spain; MS_R130.L_ES002 - Lelavandou; 01/11/202205/12/2030accompagné

Bonjour Dosh,

Voir proposition ci-jointe. Si la structure (adresse, pays, réf + nom de société) de la donnée complète des sociétés est toujours identique, il y a potentiellement d'autres pistes pour identifier la société.

13dosh-exemple.xlsx (11.28 Ko)

Cdlt,

Cylfo

Bonjour à tous,

Une contribution PowerQuery, que l'on peut ajouter à Excel 2013.

Dans le fichier : 2 exemples avec des codes différents mais donnant les mêmes résultats...

Version 1 :

let
  Source = Excel.CurrentWorkbook(){[Name = "Tableau1"]}[Content], 
  AjtList = Table.AddColumn(Source, "List", each t_Soc[Société]), 
  ListDvlp = Table.ExpandListColumn(AjtList, "List"), 
  Condition = Table.AddColumn(
    ListDvlp, 
    "Match", 
    each if Text.Contains([Société], [List]) then [List] else null
  ), 
  Filtre = Table.SelectRows(Condition, each ([Match] <> null))[
    [Match], 
    [Date de départ], 
    [Date de fin], 
    [Critère]
  ]
in
  Filtre

Version 2 :

let
  Source = Excel.CurrentWorkbook(){[Name = "Tableau1"]}[Content], 
  Match = Table.AddColumn(
    Source, 
    "Match", 
    each List.Select(t_Soc[Société], (x) => Text.Contains([Société], x))
  )[[Match], [Date de départ], [Date de fin], [Critère]], 
  Dvlp = Table.ExpandListColumn(Match, "Match"), 
  Filtre = Table.SelectRows(Dvlp, each ([Match] <> null))
in
  Filtre

Bonjour à tous !

Que faut-il "rapatrier" si la concordance est avérée ?
L’intégralité des champs de la feuille 2 (Société, Date de départ, Date de fin et Critère) ou seulement les quatre derniers ( Date de départ, Date de fin et Critère) comme le laisse supposer votre feuille "Fichier 1" ?

Bonjour à tous,

Encore quelqu'un qui nous a posé un lapin ?

Bonjour JB_, JFL, Cylfo, Dosh

Un lapin 🐇

On a tous le droit au repos (pour la nuit) et à une autre vie .

Je suis comme beaucoup un débutant en Power Query même si je connais la programmation.

Que signifie (d'où vient) dans le "gestionnaire de noms", la référençe "Fichier1' dans les noms?

Dans les scripts Power Query je ne comprends pas d'ou vient t_Soc?

Merci pour vos lumières

Bonjour Scraper,

Dans l'éditeur PowerQuery, j'ai renommé la table t_Soc (manuellement). Elle fait référence au Tableau2 dans Excel.

capture d ecran 2024 08 20 103840

Au niveau du gestionnaire de nom, on retrouve nos 2 tableaux source : Tableau1 et Tableau2 et nos 2 tableaux retournés par PowerQuery : Résultat1 et Résultat2

merci JB_

Rechercher des sujets similaires à "fonction croiser infos contient texte similaire"