Rapport de message :*
 

Re: Récupération de valeurs dans tableau

Titre du sujet : Re: Récupération de valeurs dans tableau
par JeanMarie le 20/06/2010 14:24:24

Bonjour Wilplan, le forum

Je préfère utiliser la fonction INDEX et EQUIV pour résoudre ton problème.

Ci-joint la formule de la cellule O3 :
=SI(NBVAL(M2;M4)=2;INDEX($B$3:$K$12;EQUIV(M2;A$3:A$12;0);EQUIV(M4;B$2:K$2;0));"")

NBVAL permet de connaître le nombre de valeurs alphanumériques dans les deux cellules.

EQUIV fait une recherche de la valeur de l'argument1, dans la plage et retourne la position dans la plage. Dans le 2ème argument de la fonction INDEX la recherche se fait verticalement et dans le 3ème argument la recherche est horizontale. Le sens de la recherche est en fonction de l'orientation de la plage de examiner. Cette fonction ne peut rechercher dans une plage multi-dimensions.

INDEX permet de retourner le contenu (voir la référence de la cellule) qui se trouve à l'intersection du 2ème et 3ème argument de la plage du 1er argument.

Neanmoins il est possible d'utiliser les fonctions RECHERCHEV RECHERCHEH
=SI(NBVAL(M2;M4)=2;RECHERCHEV(M2;$A$3:$K$12;EQUIV(M4;$A$2:$K$2;0);1);"")
=SI(NBVAL(M2;M4)=2;RECHERCHEH(M2;$B$2:$K$12;EQUIV(M4;$A$2:$A$12;0);1);"")

Dans ton type de tableau il y a une autre fonction possible, il s'agit de la fonction DECALER qui resemble à la fonction INDEX
=SI(NBVAL(M2;M4)=2;DECALER($A$2;EQUIV(M2;A$3:A$12;0);EQUIV(M4;B$2:K$2;0));"")

Regarde dans ces différents exemples, la référence des cellules ...

Bonne journée.

@+Jean-Marie