EXCEL, fonction INDEX et EQUIV

Bonjour à tous,

Je rencontre un petit soucis avec l'utilisation des fonctions INDEX et EQUIV sous excel.

J'ai utilisé ce lien pour tenter de résoudre mon problème: https://www.excel-pratique.com/fr/fonctions/index_equiv.php

Mon fichier possède deux feuilles de calcul.

La première feuille contient un numéro de symbole de 8 chiffres (pouvant commencer par des zéros). Ces symboles sont pour l'instant au format TEXTE mais j'ai déjà essayé plusieurs changement de format (PERSONNALISE 00000000 ou NOMBRE) mais cela n'a pas résolu le problème.

La seconde feuille contient des numéros de symboles (non classés et au format TEXTE pour l'instant). J'ai également essayé de changer les formats. A coté de la colonne des symboles, il y a une colonne Emplacement.

Je veux récupérer l'emplacement du symbole correspondant sur la deuxième feuille pour l'afficher au bon endroit sur la première feuille.

Mes deux feuilles sont en pièces jointes, avec différentes formules tentées ( INDEX+EQUIV et RECHERCHEH)

Feuille 1 cellule L16:

=INDEX(Stocks!$A$2:$B$285;EQUIV(OUTIL_EPR!$J16;Stocks!A:A;0);Stocks!$B$2:$B$285)

Feuille 1 cellule M16:

=RECHERCHEV($J16;Stocks!$A$2:$C$285;2;FAUX)
f1 f2

Ce que je comprend le moins bien c'est pourquoi RECHERCHEH fonctionne pour ma cellule M18 et pas les autres.

J'espère avoir été assez clair, si besoin je pourrais joindre une partie de mon fichier.

Dans l'attente d'un petit coup de pouce

Merci d'avance!

bonjour

les copies d'écran sont inutiles sur ce forum. Joins ton fichier

Voila le fichier

re

il y a en effet un problème dû aux nombres au format texte

Pourtant cela fonctionne pour certains numéro de symboles.. Ils ont tous le même format..

J'ai essayé de changer au format nombre mais cela ne fonctionne pas et en plus je perd les premier digit qui valent 0.

J'ai également essayé au format personnalisé 00000000 mais sans succès non plus

Bonjour @ tous,

comme il a dit jmd c'est un problème de format.

en C11 :

=SIERREUR(INDEX(Stocks!B$2:B$285;EQUIV(A11*1;Stocks!A$2:A$285*1;0));"")

@ valider par Ctrl+Shift+Enter

@ tirer vers le bas

@ + +

Bonjour R@chid,

Merci pour ta réponse le résultat est parfait !

J'essaye maintenant de convertir ceci sous VBA:

Cells(8, 12).Select
     Selection.FormulaArray = _
        "=IFERROR(INDEX(Stocks!R2C[-10]:R285C[-10],MATCH(RC10*1,Stocks!R2C[-11]:R285C[-11]*1,0)),"""")"
    'Selection.AutoFill Destination:=Range("L9:L" & DernLigne), Type:=xlFillDefault
    Range("L9").Select
    Selection.AutoFill Destination:=Range("L10:L5000"), Type:=xlFillDefault

Problème à la dernière ligne et je suis pas sur que cela copie le format matricielle aussi..

Cette macro vient de l'enregistreur avec quelques retouches

Cdt

Rechercher des sujets similaires à "fonction index equiv"