Re : renvoi valeur selon position
Bonjour
Bonjour à tous,
J'ai besoin d'un petit conseil sur les valeurs 9^9 ,...
Merci bcp
Bon dimanche
La fonction EQUIV(X;plage;0) renvoie la position du nombre X dans la plage donnée. Ici, sur une ligne, elle doit rechercher le nombre 10, sur une autre, c'est 20, sur une troisième, c'est 25... Conclusion 1, on ne peut pas utiliser cette fonction telle que, puisque X varie d'une ligne à la suivante, et qu'on ne le connait pas à l'avance. Conclusion 2 : j'ai contourné le problème en utilisant la syntaxe EQUIV(X;plage;
1) qui renvoie la position du dernier nombre, inférieur ou égal à X. Ici, en mettant 9^9 à la place de X, je suis (presque) certain que toutes les valeurs de ton tableau seront inférieures à 9^9, et donc qu'excel renverra une valeur.
Pour bien comprendre la formule proposée, il faut aller voir l'aide sur la fonction DECALER, utilisée ici 2 fois, imbriquées l'une dans l'autre. La syntaxe est :
DECALER(cellule de départ; decalage de ligne; décalage de colonne; nbre de lignes de la plage renvoyée ; nbre de colonnes de la plage renvoyée)
Exemple :
DECALER (A3;1;2;3;4) donne :
Decalage d'une ligne, --> A4
Décalage de deux colonnes, -->C4
Renvoie d'une plage de 3 lignes et 4 colonnes donc C4:F6 (3 lignes, 4, 5 et 6. 4 colonnes, C, D, E et F)
DECALER(D$7;EQUIV( A22;A$8:A$13;0);;;4) donne donc la plage horizontale comprenant les 4 cellules (à cause du 4 à la fin, donnant le nombre de colonnes (attention, il ne faut surtout pas oublier un point virgule en cours de route)) sur la bonne ligne (à cause du EQUIV( A22;A$8:A$13;0), puisque A22 contient le code du fruit à prendre en compte).
EQUIV(9^9;DECALER(D$7;EQUIV( A22;A$8:A$13;0);;;4);1) renvoie la position du dernier nombre inférieur ou égal à 9 puissance 9 sur la bonne ligne
DECALER(C$7;;EQUIV(9^9;DECALER(D$7;EQUIV( A22;A$8:A$13;0);;;4);1)) se "positione" en C$7, puis se décale de 1, 2... colonne(s) en fonction du résultat du EQUIV(9^9...) et ne renvoie que le contenu de la première cellule, puisqu'on ne lui précise pas d'autre information sur le nombre de lignes et de colonnes de la plage à renvoyer (1 ligne et 1 colonne par défaut donc).
@ plus