5 valeurs les plus fréquentes

lasauss

XLDnaute Nouveau
Bonjour à tous,

je suis tout nouveau sur ce forum qui est très formateur et qui m'a bien aidé merci.

Cependant je n'arrive pas à afficher les 5 valeurs les plus fréquentes.

J'ai une colonne avec des nombre, et je voudrai afficher sur une ligne les 5 plus fréquents .
Exemple

(A1) 10
(A2) 7
(A3) 5
... 10
... 5

Et sur ma ligne les plus cités je voudrais : 10 5 7

Merci de votre réponse
 

Gurgeh

XLDnaute Occasionnel
Re : 5 valeurs les plus fréquentes

Salut lasauss,

J'ai appelé "valeurs" la plage où se trouvent tes valeurs.

Alors pour trouver la valeur la plus représentée, y'a la fonction MODE.
Code:
=MODE(valeurs)
va te renvoyer la valeur la plus présente.

Pour trouvera la 2ème plus fréquente, on va utiliser une formule matricielle que l'on va coupler avec la fonction MODE. L'idée est de donner à la fonction MODE les valeurs dont on a enlevé la valeur la plus présente. Si on se contente de faire ça (en supposant que l'on a mis en B2 la valeur trouvée avec la formule précédente et qui donne la valeur la plus présente)

Code:
=MODE(valeurs*(valeurs<>$B$2))
, on va se retrouver avec 0 car du coup c'est 0 qui va devenir la valeur la plus présente (ne pas oublier de valider par CTRL+MAJ+ENTREE car c'est une formule matricielle)

Donc on va ruser et employer la fonction SI pour remplacer la valeur la plus présente par "" et pas par 0, donc la fonction MODE ne la comptera pas :
Code:
=MODE(SI(valeurs<>$B$2;valeurs;""))
(ne pas oublier de valider par CTRL+MAJ+ENTREE car c'est une formule matricielle)

Ensuite pour faire pro, et pour faire une formule qui marche pour trouver le 3ème, le 4ème, etc. on va utiliser la fonction EQUIV plutôt que le <> pour déterminer si la valeur fait partie des x premières valeurs (que l'on va mettre horizontalement à partir de B2) :

Code:
=MODE(SI(ESTNA(EQUIV(valeurs;$B$2:B$2;0));valeurs;""))
A valider par CTRL+MAJ+ENTREE, à mettre en B3, et à tirer ensuite vers la droite pour trouver la 3ème, la 4ème, etc.

PROBLEME : lorsque par exemple la 4ème valeur n'est représentée qu'une fois dans ta liste, la fonction MODE va renvoyer #N/A parce que c'est ce qu'elle fait lorsqu'il n'y a qu'une occurence. Dans ce cas, on va simplement utiliser MAX, mais ça rend la formule un peu plus compliquée !
Code:
=SI(ESTNA(MODE(SI(ESTNA(EQUIV(valeurs;$B$2:B$2;0));valeurs;"")));MAX(SI(ESTNA(EQUIV(valeurs;$B$2:B$2;0));valeurs;""));MODE(SI(ESTNA(EQUIV(valeurs;$B$2:B$2;0));valeurs;"")))
A mettre en B3 et à valider par CTRL+MAJ+ENTREE

Et si tout ça c'est pas clair, voir le fichier joint !

a ta dispo si questions...

Gurgeh
 

Pièces jointes

  • X plus grandes valeurs.xls
    14.5 KB · Affichages: 63

R@chid

XLDnaute Barbatruc
Re : 5 valeurs les plus fréquentes

Bonsoir lasauss et Bienvenu sur XLD,
Bonsoir Gurgeh,
une autre sur le fichier de notre cher ami Gurgeh,
en J2,
Code:
=SIERREUR(INDEX(valeurs;EQUIV(MAX(SI(NB.SI(J$1:J1;valeurs)=0;NB.SI(valeurs;valeurs)));SI(NB.SI(J$1:J1;valeurs)=0;NB.SI(valeurs;valeurs));0));"")
@ valider par Ctrl+Maj+Entree
@ tirer vers le bas
@ micalement
 

Discussions similaires

Statistiques des forums

Discussions
311 721
Messages
2 081 928
Membres
101 842
dernier inscrit
seb0390