Recherche tableau multi critère Index + Equiv [Fermé]

Signaler
Messages postés
3
Date d'inscription
mercredi 11 mars 2015
Statut
Membre
Dernière intervention
12 mars 2015
-
Messages postés
3334
Date d'inscription
samedi 20 juillet 2013
Statut
Membre
Dernière intervention
9 décembre 2016
-
Bonsoir à tous,

Après 3 jours de test intensifs, je craque ...
Mon problème est pourtant simple et j'ai tenté d'appliquer ce que j'ai trouvé sur les forums mais en vain....

Voici le contexte: un tableau comportant 3 colonnes (info1,info2, info3)
Je souhaite récupérer l'info 3 à partir des infos 1&2.
Exemple
Info1 Info2 Info3
i11 i21 i31
i11 i22 i32
i12 i21 i33
i12 i22 i34
i12 i23

Pour info1 = i12 ; info2 = i21 j'obtiens i33
Je sais que la formule s'écrit =INDEX(info3,EQUIV(1,(info1="i12")*(info2="i21"),0)) mais rien à faire... je sors du #N/A sans arrêt.. une solution?
LA méthode est-elle bonne? ai-je des soucis de format (pourtant j'ai vérifié!), la définition de mon tableau avec les entête?

Un grand merci pour votre aide :)

Etienne

PS: la deuxième étape sera de passer sous vba avec la formule match et evaluate (oui oui j'ai déjà bcp cherché...)

4 réponses

Messages postés
3334
Date d'inscription
samedi 20 juillet 2013
Statut
Membre
Dernière intervention
9 décembre 2016
508
Bonjour,

La formule est bonne mais il s'agit d'une formule matricielle et tu dois appuyer sur Ctrl+Maj+Entrée pour la valider.

A+
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 63550 internautes nous ont dit merci ce mois-ci

Messages postés
3
Date d'inscription
mercredi 11 mars 2015
Statut
Membre
Dernière intervention
12 mars 2015

C'était fait je pense que le problème vient plutôt du nom des colonnes..

message d'erreur #nom
Messages postés
3334
Date d'inscription
samedi 20 juillet 2013
Statut
Membre
Dernière intervention
9 décembre 2016
508
Dans ta formule, info1, info2 et info3 ne sont pas les en-têtes de colonne mais des plages nommées correspondant aux données de ces colonnes.

La preuve par l'exemple :

https://www.cjoint.com/c/ECluEd88t4g

A+
Messages postés
3
Date d'inscription
mercredi 11 mars 2015
Statut
Membre
Dernière intervention
12 mars 2015

Merci Gryus ça marche très bien maintenant!!! (tu m'as bien aidé!!)

Je suis passé sous vba maintenant et ça fonctionne pas mal. J'ai juste un soucis pour définir info1, info2, info3 en tant que variable.
Dois-je écrire :
coa= Feuil1!$A$2:$A$6 par exemple?


résultat = Evaluate("INDEX(info3,MATCH(1,(info1=""" & i11 & """)*(info2=" & i21 & "),0))")
Messages postés
3334
Date d'inscription
samedi 20 juillet 2013
Statut
Membre
Dernière intervention
9 décembre 2016
508
Bonjour,

Essaie avec :
Resultat = Evaluate("INDEX(info3,MATCH(1,(info1=""i11"")*(info2=""i21""),0))")

Y-a pas de coa !... puisque les 3 plages nommées sont déjà définies.

A+