Excel : trouver une valeur à partir de deux conditions

Bonjour à tous,

Je viens vers vous car j'ai un problème complexe que je n'arrive pas à résoudre.

J'ai deux onglets excel.

L'un contient 3 colonnes :

A1 : communes (exemple : Paris)

B1 : adresse simplifiée (exemple : la poste)

C1 : code spécifique (exemple : PARIS_poste1 )

L'autre contient 2 colonnes :

A2 : communes (exemple : Paris)

B2 : adresse complète (exemple : 123 Avenue Victor Hugo [la poste] )

A partir de cela j'aimerai trouver une formule, ou macro, qui me permettrait de mettre en colonne C2 le code de C1. Les conditions seraient : Quand A1 = A2 et que B2 contient B1 alors copier C1 en C2.

J'ai essayé cette formule :

=SIERREUR(INDEX('fichier 1'!C2:C37;EQUIV('fichier 2'!A2&'fichier 2'!B2;'fichier 1'!A2:A37&'fichier 1'!B2:B37;0));"inexistant")

Mais ce qui me bloque c'est que B1 ne comporte qu'une partie du texte en B2 du coup ça ne fonctionne pas..

J'ai plus de 1200 lignes et je ne trouve pas de formules qui conviennent.. Quelqu'un aurait la formule magique svp?!

Je vous joint une extraction du fichier concernant une ville.

33exemple.xlsx (13.73 Ko)

Merci de votre aide!

Salut Godam, bienvenue sur le Forum,

Ta demande semble de prime abord impossible. Excel aime bien les choses très exactes et toi tu nous propose un fichier de très haute fantaisie !!

Et en parlant de fantaisie, tes explications ne sont guère plus précises. Lorsque tu dis : ‘’ Quand A1 = A2 et que B2 contient B1 alors copier C1 en C2’’, on aimerait bien comprendre de quelle feuille tu parles !! Ou alors lorsque tu parles de la ‘’Colonne C2’’ !! Chapeau à qui la trouvera.

Bon, est-ce que de dégrossir ton problème serait déjà une partie de solution ? Je me dis que si l’on extrayait le dernier mot des lignes de la colonne B de la feuille Fichier 1, (voyage, bourgeois, barbes, lagrange, floch, etc.) et que l’on recherchait dans les lignes de la colonne B de la feuille fichier 2 s’il y a une correspondance, ça te permettait déjà de mettre en évidence les lignes que tu devrais alors encore contrôler manuellement.

Par exemple en isolant le mot ‘’lagrange’’ de la cellule B5 de la feuille fichier 1, tu arriverais à voir qu’il se trouve également dans la cellule B9 de la feuille fichier 2.

Par contre le mot ‘’floch’’ de la cellule B6 de la feuille fichier 1 ne peut pas être trouvé dans la cellule B10 de la feuille fichier 2 puisqu’il est écrit ‘’foch’’ !!!!! Sacré Ferdinand, maréchal de son état, il doit s’en retourner dans sa tombe.

Si mon idée ne t’aidait que très peu, merci de me le dire, car j’ai l’impression que ce serait quand même un gros boulot que de me lancer dans la réalisation du code proposé.

Si mon idée te tente, il est bien entendu que je voudrais avoir ton fichier réel à disposition (en privé si tu le juges nécessaire) afin de ne pas travailler dans le vide.

Cordialement.

Bonjour et désolé pour le retard..

Effectivement j'ai très mal écrit ma demande...

Les A1, B1 et C1 sont en fait les colonnes A, B et C du "fichier 1" et A2, B2 et C2 sont en fait les colonnes A, B et C du "fichier 2"...

En effet, dégrossir le travail comme proposé serait vraiment bien.

Mais si cela demande trop de travail ne vous embêtez pas. Je pense que les erreurs de frappes telles que l'exemple de "Floch" et "Foch" sont nombreuses et risquent de vous faire travailler pour un rendu un peu décevant face à l'effort demandé..

Merci pour votre réponse et votre aide!

Cordialement.

Salut,

Alors, je me suis attelé à ton travail, mais j’en ai fait le minimum. Je m’explique ; pour la beauté du geste, ce serait bien que tu n’aies qu’une seule macro qui effectuerait tout le travail en une fois. Mais comme tu as dit que tu n’étais pas certain que ça te sera très utile, je me suis permis de me simplifier la vie et de te proposer ce travail en deux étapes.

Sur la feuille ‘fichier 1’, tu places ta premières listes et tu lances la macro placée derrière le bouton ‘Mots-clés dans la colonne D’.

Les derniers mots de la colonne B sont repris dans la colonne D sur la base du dernier espace (aire d'acceuil gens du voyage renvoit voyage), du dernier apostrophe (bvd de l'egalite renvoit egalite) ou du dernier signe / (angle gallieni/bourgeois renvoit bourgeois). Si tu as d’autres signes semblables à traiter, il faut me les indiquer et je les ajoutes à la macro.

Ceci étant fait, tu vas sur la feuille ‘fichier 2’ et tu lances la deuxième macro placée derrière le bouton ‘Correspondance avec la feuille 1’ ; les correspondances s’affichent dans les colonnes D et E.

Si tu as l’impression que ce travail pourrait être plus utile que ce qu’il semble à première vue, je pourrais bien entendu améliorer tout ça.

Cordialement.

21exemple-v1.xlsm (27.82 Ko)

Bonjour,

Merci pour ce travail, ça réduit déjà pas mal le travail à faire!

Je vais du coup me débrouiller avec ça pour dégrossir le travail!

Je te remercie pour ton aide!

Bonne journée.

Rechercher des sujets similaires à "trouver valeur partir deux conditions"