Excel : top 10 des occurrences, possible?
ben812
Messages postés
19
Date d'inscription
Statut
Membre
Dernière intervention
-
ben812 Messages postés 19 Date d'inscription Statut Membre Dernière intervention -
ben812 Messages postés 19 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Voila ma situation, un tableau dont une colonne nous intéresse.
1500 lignes, sur chaque lignes et dans la cellule correspondant à cette colonne, un titre de film.
Sur ces 1500 lignes, il doit bien y avoir autour de 1400 occurences différentes.
Est-il possible d'automatiser un top10 des films se répétant le plus dans cette colonne (pour un même film, les différentes cellules sont strictement égal)?
Pour pimenter la chose je suis sous excel 2003
Voila ma situation, un tableau dont une colonne nous intéresse.
1500 lignes, sur chaque lignes et dans la cellule correspondant à cette colonne, un titre de film.
Sur ces 1500 lignes, il doit bien y avoir autour de 1400 occurences différentes.
Est-il possible d'automatiser un top10 des films se répétant le plus dans cette colonne (pour un même film, les différentes cellules sont strictement égal)?
Pour pimenter la chose je suis sous excel 2003
A voir également:
- Excel : top 10 des occurrences, possible?
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Déplacer colonne excel - Guide
- Si ou excel - Guide
- Excel moyenne - Guide
9 réponses
La fonction =COUNTA() ou =NB.SI() te permettra de compter le nombre d'occurences de chaque film.
Ensuite, tu l'imbriques dans la fonction =RANK() ou =RANG() pour te donner le classement.
Enfin, tu mets une mise en forme conditionnelle pour mettre en valeur le TOP10.
:-)
Ensuite, tu l'imbriques dans la fonction =RANK() ou =RANG() pour te donner le classement.
Enfin, tu mets une mise en forme conditionnelle pour mettre en valeur le TOP10.
:-)
Bonjour,
Ce lien te donne la méthode pour les3 premiers.
La formule pour le 3ème =INDEX(champ;MODE(SI((champ<>"")*(champ<>D1)*(champ<>D2);EQUIV(champ;champ;0)))) étant déjà complexe, je pense qu'il te faut une fonction personnalisée par VBA.
Ce lien te donne la méthode pour les3 premiers.
La formule pour le 3ème =INDEX(champ;MODE(SI((champ<>"")*(champ<>D1)*(champ<>D2);EQUIV(champ;champ;0)))) étant déjà complexe, je pense qu'il te faut une fonction personnalisée par VBA.
Merci pour vos réponse, mais j'ai bien peur que tout ceci soit au dela de mes capacités sur excel...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bon alors, michel, immense merci, j'ai adapté la formule et elle fonctionne parfaitement!
Je sais que j'abuse un peu mais si quelqu'un est susceptible de m'aider à aller encore un peu plus loin, je serais le plus heureux des hommes.
-sur mon tableau j'ai aussi une colonne "genre", il y en a trois : DOCUMENTAIRE/FICTION/JEUNES PUBLICS
-J'ai également une colonne "date de commande" en format date du type "24/01/2012"
Dans l'idéal, j'aimerais pouvoir faire :
-un top par mois global
-3 tops par catégories
-3 tops par catégories et par mois
Je sais que j'abuse un peu mais si quelqu'un est susceptible de m'aider à aller encore un peu plus loin, je serais le plus heureux des hommes.
-sur mon tableau j'ai aussi une colonne "genre", il y en a trois : DOCUMENTAIRE/FICTION/JEUNES PUBLICS
-J'ai également une colonne "date de commande" en format date du type "24/01/2012"
Dans l'idéal, j'aimerais pouvoir faire :
-un top par mois global
-3 tops par catégories
-3 tops par catégories et par mois
Hmmmm, j'ai finis par réussir par moi même le top des catégories en rajoutant *($R$2:$R$1522="FICTION"), par contre j'achoppe sur l'ajout du critère mois. quelqu'un a une idée ?
Bon j'ai (encore) réussi à trouver la solution pour les mois par moi même.
Mais je galère pour les mois ET le genre réunis
- Formule pour le top par genre :
=SI(NB.SI('531.xls'!$Q$2:'531.xls'!$Q5;'531.xls'!$Q5)>1;0;NB.SI('531.xls'!$Q$2:'531.xls'!$Q$1520;'531.xls'!$Q5)-LIGNE()/100000)*('531.xls'!$R$2:$R$1522=$B$103)
La dernière parenthèse déterminant le genre
- Formule pour le top par mois
=SI(NB.SI('531.xls'!$Q$2:'531.xls'!Q5;'531.xls'!Q5)>1;0;NB.SI('531.xls'!$Q$2:'531.xls'!$Q$1520;'531.xls'!Q5)-LIGNE()/100000)*((MOIS('531.xls'!$D$2:$D$1520)=1))
La dernière parenthèse déterminant le mois, ici janvier.
Je pensais donc naîvement (mes raisonnements sont purement empiriques je maitrise pas vraiment excel...), qu'en mettant les deux parenthses précédées d'une étoile à la suite cela fonctionnerait mais non.
Une idée?
Mais je galère pour les mois ET le genre réunis
- Formule pour le top par genre :
=SI(NB.SI('531.xls'!$Q$2:'531.xls'!$Q5;'531.xls'!$Q5)>1;0;NB.SI('531.xls'!$Q$2:'531.xls'!$Q$1520;'531.xls'!$Q5)-LIGNE()/100000)*('531.xls'!$R$2:$R$1522=$B$103)
La dernière parenthèse déterminant le genre
- Formule pour le top par mois
=SI(NB.SI('531.xls'!$Q$2:'531.xls'!Q5;'531.xls'!Q5)>1;0;NB.SI('531.xls'!$Q$2:'531.xls'!$Q$1520;'531.xls'!Q5)-LIGNE()/100000)*((MOIS('531.xls'!$D$2:$D$1520)=1))
La dernière parenthèse déterminant le mois, ici janvier.
Je pensais donc naîvement (mes raisonnements sont purement empiriques je maitrise pas vraiment excel...), qu'en mettant les deux parenthses précédées d'une étoile à la suite cela fonctionnerait mais non.
Une idée?
2 très bonnes idées dans ta solution...
Ligne()/10000 et l'utilisation de GrandeValeur..;
Superbe, classe, j'la garde celle là!!
A+