Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

coolreds

XLDnaute Occasionnel
Bonjour

j'ai la colonne A avec des références, à l'intérieur il y a des mots clé soit devant ou à la fin corresponde à des codes.

exemple: BW en D2 qui donne rédérence à Blanc brillant en E2 je voudrai se trouve dans la colonne en A6 à la fin du mot mais il peut etre aussi au début


j'ai besoin de faire une recherche dans cette colonne pour réindexer le mot dont j'ai besoin

merci de votre aide
 
Re : Indexage

Bonsoir,

Un autre essai avec une formule matricielle (sans doute améliorable) en B2 :

Code:
=SI(SOMMEPROD(ESTNUM(TROUVE($D$1:$D$3;A2))*1)=0;"";
INDEX($E$1:$E$3;EQUIV(STXT($A2;SOMME(SI(ESTNUM(
TROUVE($D$1:$D$3;A2));TROUVE($D$1:$D$3;A2)));2);$D$1:$D$3;0)))

Formule matricielle à valider par CTRL + MAJ + ENTREE

et à recopier vers le bas

permet ainsi de gérer d'autres références.

@+
 
Re : Indexage

Bonsoir coolreds, tibo

Tu as grandement raison tibo (INDEX/EQUIV), et d'ailleur la solution se trouvait dans le titre (Indexage).

Mea culpa donc...

Un essai avec une formule non matricielle (SIERREUR = Excel 2007 => SI(ESTERREUR pour Excel 2003):

_ = Plage nommée $D$1:$D$3 (pour la lisibilité)

Code:
=SIERREUR(INDEX($E$1:$E$3;SI(EQUIV(DROITE(A2;2);_;0);EQUIV(DROITE(A2;2);_;0);EQUIV(GAUCHE(A2;2);_;0)));"")
... à la fin du mot mais il peut etre aussi au début
d'ou l'utilisation de GAUCHE et DROITE

Explication :

SIERREUR(résultat de la formule; sinon cellule vide)

INDEX(mots cherchés;(EQUIV(les 2 derniers ou premiers carac. de A2; qui se trouve dans ref;égalité parfaite)
=> égalité parfaite : en D3 ta chaine à une longueur NBCAR=3 c'est à dire un espace en trop : "PG ",
Il n'y aura donc pas d'égalité... (Tu dois supprimer l'espace à la fin de PG dans la cellule D3)

SI(EQUIV(DROITE(A2;2);$D$1:$D$3;0); ' Si cette formule ne renvoie pas d'erreur (rappel : $D$1:$D$3 = _)
EQUIV(DROITE(A2;2);$D$1:$D$3;0); ' Renvoyer ce résultat-là
EQUIV(GAUCHE(A2;2);$D$1:$D$3;0)) ' Sinon essayer de renvoyer ce résultat-ci

Sinon
SIERREUR(formule;"") ' renverra vide

Bon j'espère que je me suis amendé...

A plus

PS: Evidemment tes codes ne doivent faire que 2 caractères
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
9
Affichages
889
Retour