Comparer valeurs contenues dans plage avec contenu d'une chaine de texte

glagaffe

XLDnaute Nouveau
Bonjour très cher(e) Ami(e)s,

Je n'arrive pas à résoudre le problème suivant :
En A2 par exemple j'ai la chaine de texte suivante :
"REMISE CHQ DE 2 CHEQUES"

Dans un autre onglet, j'ai une liste (nommée 'gc') de valeurs sur deux colonnes et 4 lignes :
Libel Numero
AUTOROUTE 9
BOUYGUES 8
BRUDIS 5

Comment faire pour vérifier si un des item de la liste (par ex 'AUTOROUTE') est bien contenu dans la chaine en A2

J'ai essaye la fonction
OU(EXACT(A2;gc)) en formule matricielle mais ne fonctionne pas car recherche une correspondance exacte.

Merci de votre aide

Gast:)
 

CISCO

XLDnaute Barbatruc
Re : Comparer valeurs contenues dans plage avec contenu d'une chaine de texte

Bnjour

A la va vite, un début de solution :
=SI(SOMMEPROD(ESTNUM(CHERCHE(GAUCHE(gc;CHERCHE(" ";gc)-1);A2))*1)<>0;"OK";"NON").

Il y a certainement moyen de faire plus court... Pas le temps maintenant...

@ plus
 

glagaffe

XLDnaute Nouveau
Re : Comparer valeurs contenues dans plage avec contenu d'une chaine de texte

Bonjour
Merci Cisco

Voici un exemple en pièc ejointe pour mieux me faire comprendre.

La formule proposée ne fonctionne pas semble-t-il

Merci pour votre aide

GAst
 

Pièces jointes

  • test.xls
    15.5 KB · Affichages: 88
  • test.xls
    15.5 KB · Affichages: 89
  • test.xls
    15.5 KB · Affichages: 89

CISCO

XLDnaute Barbatruc
Re : Comparer valeurs contenues dans plage avec contenu d'une chaine de texte

Rebonjour

Rien ne vaut un petit fichier en pièce jointe...

Plusieurs solutions ci-dessous...

@ plus
 

Pièces jointes

  • test(1) gc.xls
    22 KB · Affichages: 107

job75

XLDnaute Barbatruc
Re : Comparer valeurs contenues dans plage avec contenu d'une chaine de texte

Bonsoir glagaffe, CISCO,

Formule matricielle en D2 :

Code:
=INDEX(gc!A:A;MIN(SI(ESTNUM(CHERCHE(gc!A$2:A$12;A2));LIGNE($2:$12);10000)))&""

A valider par Ctrl+Maj+Entrée et tirer vers le bas.

Fichier joint.

Edit : on peut aussi utiliser NB.SI et le caractère générique *, toujours en matriciel :

Code:
=INDEX(gc!A:A;MIN(SI(NB.SI(A2;"*"&gc!A$2:A$12&"*");LIGNE($2:$12);10000)))&""

A+
 

Pièces jointes

  • test(1).xls
    16.5 KB · Affichages: 79
  • test(1).xls
    16.5 KB · Affichages: 86
  • test(1).xls
    16.5 KB · Affichages: 88
Dernière édition:

glagaffe

XLDnaute Nouveau
Re : Comparer valeurs contenues dans plage avec contenu d'une chaine de texte

Bonsoir,

Merci à Cisco et Job75.

Les différentes formules proposées répondent toutes à ma question et de plus me donnent des idées pour d'autres taches.

Ces retours appréciés me donnent l'envie de me plonger de manière approfondies dans la recherche des fonctions et Vba Excel.

Je vous en remercie très vivement.

Bien amicalement et bonne soirée

Gast's:)
 

Discussions similaires