XL 2019 Problème avec INDEX & EQUIV

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 !

Titof06

XLDnaute Junior
Bonjour,

J'ai un souci avec les fonctions INDEX & EQUIV.

Je joins mon fichier.

Les Colonnes I,J & K sont ma base de recherche.
Mon critère est le "89", en $B$2.
Les résultats en vert avec un filtre sont en colonne E,F & G

J'ai un souci à partir de la ligne 6 et plus (en orange).
Je souhaite ne rien trouver de plus.

Idem avec le critère "25", en $B$4.
J'ai un souci à partir de la ligne 8 et plus (en orange).

Je ne sais pas comment faire.

Si quelqu'un pourrait m'aider, svp.

Je vous souhaite une agréable journée.

Titof06
 

Pièces jointes

Solution
Bonjour à tous,

Peut-être avec cette formule, ta compréhension sera au rendez-vous.
VB:
INDEX(Feuil2!$F$2:$F$900;PETITE.VALEUR(SI(Feuil2!$D$2:$D$900=$B$2;LIGNE(Feuil2!$D$2:$D$900)-1);LIGNE(A1)))

Donc on recherche dans la plage "Feuil2!$F$2:$F$900", toutes les valeurs ayant le critère "B2" (89) dans la plage "Feuil2!$D$2:$D$900".
On énumère ces critères par 1;2;3;4;etc... avec la fonction LIGNE(Feuil2!$D$2:$D$900)-1. On soustrait 1 car la plage de données (Feuil2!$D$2:$D$900) débute en ligne 2.
La fonction petite.valeur (PETITE.VALEUR(matrice, k)) demande dans la plage, le rang de la donnée à renvoyer.
Pour cela j'utilise la fonction LIGNE(A1) soit 1, sur la ligne suivante on aura LIGNE(A2) soit 2.

J'ai ajouté la fonction...
Bonjour JHA,

Je vous remercie pour ces solutions, mais je ne peux pas utiliser de TCD, mon patron ne souhaite pas ce type d'affichage.

Mais la solution apportée, en B14 et dessous, fonctionne très bien.

Il va falloir que je la comprenne pour l'adapter au fichier d'origine.

Encore un grand Merci 👍

Je vous souhaite une agréable journée,

Titof06
 
Re-Bonjour JHA,

Je vous remercie pour cette solution.

Je commence à comprendre avec le système de mise en tableau de certaines données.

Par contre, INDEX & EQUIV, il me reste à chercher le fonctionnement.

Encore un grand Merci 👍

Je vous souhaite une agréable fin de journée,

Titof06
 
Bonjour à tous,

Peut-être avec cette formule, ta compréhension sera au rendez-vous.
VB:
INDEX(Feuil2!$F$2:$F$900;PETITE.VALEUR(SI(Feuil2!$D$2:$D$900=$B$2;LIGNE(Feuil2!$D$2:$D$900)-1);LIGNE(A1)))

Donc on recherche dans la plage "Feuil2!$F$2:$F$900", toutes les valeurs ayant le critère "B2" (89) dans la plage "Feuil2!$D$2:$D$900".
On énumère ces critères par 1;2;3;4;etc... avec la fonction LIGNE(Feuil2!$D$2:$D$900)-1. On soustrait 1 car la plage de données (Feuil2!$D$2:$D$900) débute en ligne 2.
La fonction petite.valeur (PETITE.VALEUR(matrice, k)) demande dans la plage, le rang de la donnée à renvoyer.
Pour cela j'utilise la fonction LIGNE(A1) soit 1, sur la ligne suivante on aura LIGNE(A2) soit 2.

J'ai ajouté la fonction sierreur(formule;"") pour éviter les erreurs si il n'y a plus de de donnée avec ces critères.

JHA
 
Bonjour JHA,

Je vous remercie pour ces explications bien utiles et précises.

Je connais la fonction "sierrreur()", par contre, je ne maitrise pas encore les fonctions INDEX, EQUIV & PETITE.VALEUR.

Je vais continuer à apprendre en regardant vos explications, et encore merci pour ces très bons conseils.

Je vous souhaite une agréable journée,

Titof06
 
- 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

Retour