Grand + petit

Bonjour à tous ;

Voila j'aimerai comparer 3 valeurs et qu'en sortie de formule cela m'indique l'activité avec le plus grand nombre.

Pour 2 valeurs pas de soucis mais 3 je bloque.

Merci d'avance pour votre aide

Cordialement

3aide.xlsx (9.11 Ko)

Bonjour,

Une proposition à adapter.

Cdlt.

11aide.xlsx (13.49 Ko)

Bonjour,

2 manières de faire (parmi d'autres)

=INDEX(C1:E1;1;EQUIV(MAX(C2:E2);C2:E2;0))

ou

=SI(C2>D2;SI(C2>E2;C1;E1);SI(D2>E2;D1;E1))

edit : bonjour Jean-Eric

merci bcp a vous 2 pour votre aide . J'oubli souvent la solution index

Je viens de m'apercevoir que j'avais omis une condition . En effet si la personne n' a pas de données d'activités je souhaiterai que cela mette blanc en résultat

Désolé de l'oubli et merci d'avance

Bonjour ozeoo,

4aide.xlsx (8.89 Ko)

Regarde d'abord la formule en G2, puis celle en H2

dhany

Bonjour ozeoo, le forum,

Ma formule est : =SI(SOMME(C2:E2)=0;"";INDEX(C$1:E$1;1;EQUIV(MAX(C2:E2);C2:E2;0)))

Vous trouverez ci-dessous une explication détaillée.


Je commence par le plus facile : le début de la formule : =SI(SOMME(C2:E2)=0;"";

Ça fait que SI les 3 cellules C2, D2, et E2 sont vides ou contiennent 0, la somme est 0

➯ ne rien afficher : chaîne de caractères vide : "" (2 guillemets, avec rien entre)


SINON, faire la suite : INDEX(C$1:E$1;1;EQUIV(MAX(C2:E2);C2:E2;0)))

La plage de cellules est celle des entêtes : C1:E1 dont il faut en retourner un ; j'ai ajouté les 2 signes « $ » pour que ça reste pareil lors de la recopie vers le bas de la formule : C$1:E$1 ; sans les 2 signes « $ », on aurait : C2:E2, C3:E3, C4:E4...

INDEX(plage;ligne;colonne) retourne l'élément situé à telle ligne et telle colonne de plage ; dans l'exemple, il n'y a qu'une seule ligne : c'est pas comme si y'avait eu 3 lignes avec C1:E3 ; c'est pour ça que le 2ème paramètre ligne est 1.

Si les entêtes avaient été plus bas, par exemple en ligne 5, j'aurais mis : INDEX(C$5:E$5;1;...)

donc toujours avec 1 en 2ème paramètre, car c'est pas la ligne de la feuille mais celle de la plage.


Tout ce qui va suivre est pour le 3ème paramètre colonne :

Avec INDEX(C1:E1;1;1) : élément en ligne 1 de la 1ère colonne de C1:E1 ➯ Activité A

Avec INDEX(C1:E1;1;2) : élément en ligne 1 de la 2ème colonne de C1:E1 ➯ Activité B

Avec INDEX(C1:E1;1;3) : élément en ligne 1 de la 3ème colonne de C1:E1 ➯ Activité C

Seulement voilà : à ce stade, on ne sait pas si la colonne doit être 1, 2, ou 3 ! car ça dépend du maximum !!!

celui-ci est MAX(C2:E2) : max de 35, 44, et 23 = 44

C'est grâce à la fonction EQUIV() qu'on a le bon n° de colonne : EQUIV(MAX(C2:E2);C2:E2;0)

ça évalue : EQUIV(44;C2:E2;0) ; ça signifie ; retourner la position de 44 dans C2:E2, et comme

44 est en 2ème position sur la ligne, ça retourne 2.

Le 0 qui est au bout est pour dire chercher exactement 44 ; il y a 2 autres valeurs pour une valeur proche (en dessous ou au-dessus) ; voir l'aide Excel pour plus de détails.

dhany

Bonjour,

Ce n'était pas ce que tu demandais déjà ici ?

https://forum.excel-pratique.com/viewtopic.php?f=2&t=108694&p=644665#p644665

Eric

Rechercher des sujets similaires à "grand petit"