Retourner une valeur contenue dans une cellule

Bonjour,

je cherche à afficher dans une cellule le nom d'un fournisseur contenu dans des positions aléatoires au sein d'une autre cellule.

mon problème est illustré en pièce jointe:

- j'ai une base de donnée avec des libellés de fournisseurs en colonne A

- j'ai la liste des fournisseurs recherchés en colonne E

- je souhaite faire apparaitre en colonne C; les fournisseurs de ma liste identifiés dans la colonne A via une formule

L'objectif final est de pouvoir faire un pivot sur cette db pour analyser mes couts par fournisseurs

Merci

M. Joly

Bonjour,

Voici une proposition avec une fonction personnalisée, qui ignore la casse :

Function EXTRACT(chaine As String, Liste As Range) As String

Dim reg As Object
Dim motif$

motif = Join(Application.Transpose(Liste), "|")
Set reg = CreateObject("vbscript.regexp")

With reg
    .ignorecase = True
    .Pattern = motif
    If .test(chaine) Then
        EXTRACT = .Execute(chaine)(0).Value
    End If
End With

End Function

Elle dépend de 2 paramètres, le texte sur lequel porte la recherche et la liste des valeurs de correspondance. Elle est à saisir ainsi sur feuille :

=EXTRACT(A2;$E$2:$E$4) 'où A2 est le texte et E2:E4 la liste des fournisseurs

Cdlt,

Merci 3GB3

Désolé je n'avais pas bien précisé que je souhaite pouvoir avoir cette info via une formule et non via une macro

Matthieu

Bonjour,

Et bien, vous étiez en stage chez le père noel ?

C'est une fonction qui s'utilise sur feuille comme expliqué sur mon précédent commentaire. Voici un essai avec une formule matricielle à valider par ctrl + maj + entrée :

=INDEX(Liste;EQUIV(1;NB.SI(A2;"*"&Liste&"*");0))

où Liste est la plage nommée contenant les noms de fournisseurs à rechercher en colonne A

Téléchargez donc le fichier que j'ai joint au moins !

Cdlt,

Merci 3GB

Désolé pour ma réponse tardive. En effet je suis resté assez dubitatif sur cette solution :-)

Dubitatif car cela marche et me rend bien service donc merci pour cela mais je pensais innocement qu'une solution plus simple existait. j'ai du mal en effet à comprendre cette formule matricielle....

Bon je vais m'y recoller plusieurs fois et peut être y arriverais-je un jour :-)

Mattjol

Rechercher des sujets similaires à "retourner valeur contenue"