Problème excel

Résolu/Fermé
mitch - 27 juil. 2009 à 00:05
le hollandais volant Messages postés 4998 Date d'inscription samedi 8 mars 2008 Statut Membre Dernière intervention 23 décembre 2023 - 27 juil. 2009 à 21:00
Bonsoir,

Je cherche à résoudre un petit problème que je rencontre sous excel.

Voici ce que je voudrais accomplir :

En cellule D6 par exemple, je voudrais mettre une formule qui dit que SI(D4= une des valeurs de D1 à U1) alors on prends la case du dessous.
Par exemple si D4 est égal à G1 alors il me sort la valeur G2. Mais si D4 avait été égal à R1 alors il m'aurait sorti la valeur R2.
Sachant qu'il n'y aura jamais le moindre doublon, je veux dire par là que D4 ne sera toujours égal qu'à une seule des valeurs de la plage D1 à U1.


Merci de votre aide

mitch
A voir également:

4 réponses

JvDo Messages postés 1978 Date d'inscription mercredi 27 juillet 2005 Statut Membre Dernière intervention 28 septembre 2020 857
27 juil. 2009 à 00:35
Bonsoir,
utilise la fonction rechercheh()
en D6: =RECHERHCEH(D4;D1:U2;2;FAUX)
Naturellement, il faudra gérer les cas où D4 n'apparaît pas dans D1:U1
Cordialement
1
le hollandais volant Messages postés 4998 Date d'inscription samedi 8 mars 2008 Statut Membre Dernière intervention 23 décembre 2023 1 056
27 juil. 2009 à 00:33
Salut!

bien sur^^ que c'est possible, mais il faut faire un peu de gymnastique… J'ai une solution un peu "rustique" mais très simple^^

Les lignes sont donc les lignes 1 et 2.
En D4 il y'a une valeur à comparer.

Ce que l'on va faire : dans une troisième ligne, on va comparer la valeur dans D4 avec ceux dans les cases de la ligne 1.

Si les valeurs sont égales, on renvoie la valeur de la ligne 2 correspondant, sinon, on renvoi 0.

dans les cellules de la ligne 3 on tapes :
=si($d$4=A$1;A$2;0)

tu connais un peu la fonction "si()"?
Sinon, les "$" sont pour mettre en référence absolu. Comme tu ne va pas taper ces formules dans chaque case de la ligne 3, mais que tu va utiliser le "glisser" pour appliquer la formule à toute la ligne, les cases (b1=>b2 ; c1=>c3) seront changés.
Fatalement, la case D4 aussi. Pour rendre le "D" fixe, on met un "$" devant. Idem pour rendre le "4" fixe.


Bon, poursuivons. La ligne 3 contient donc uniquement des zéros, sauf dans la case qui correspond à celle qui est en dessous de la case égale à D4.

Il suffit de reprendre cette valeur et la mettre dans D6.

Comment? Facile : il n'y a qu'une valeur non-nulle dans la ligne 3! On peut utiliser la fonction "max" qui renvoie la valeur maximale d'une plage de cellules.

Ainsi, dans D6, on mettra "=max(A3:U3)".

Et voilà, le tour est joué!
Biensur, la fonction "max" marche ici uniquement si les valeurs sont positives. Si elles sont négatives, il faut un autre truc. Il le faut?


En tout cas, je voudrais te dire que tu est une des rares personnes à expliquer avec autant de précision ton problème.
0
Merci à tous les 2,

j'ai utilisé la méthode de JvDo, la formule est parfaite pour ce que je dois faire. Et j'en ai profité pour découvrir la même en vertical.

Encore merci

A+

mitch
0
le hollandais volant Messages postés 4998 Date d'inscription samedi 8 mars 2008 Statut Membre Dernière intervention 23 décembre 2023 1 056
27 juil. 2009 à 21:00
Oui, en effet…

Je ne connaissait pas cette fonction, décidément, on en apprend tous les jours :-)

Mais je remarque une chose : on s'en sort toujours à fabriquer des choses compliqués avec des petit trucs simples^^


Bonne soirée!
0