Comptage en regroupant par champs

Fermé
BZHades - 15 févr. 2010 à 15:39
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 - 15 févr. 2010 à 17:05
Bonjour tout le monde,

J'ai un petit soucis, car j'aimerais me faciliter la vie (tant qu'à faire), mais je manque de connaissances en excel.
J'ai un tableau issu d'une base de données (je n'ai pas accès à cette même base en fait, c'est là le soucis, j'aurais sur faire en SQL). Dans ce tableau, j'ai des valeurs que j'aimerais mettre en statistique.

Par exemple, j'ai des pays dans une colonne. J'aimerais faire un tableau statistique me donnant le nombre de fois qu'apparait chaque pays.

Donc en gros, je voudrais un résultat sous cette forme (champ regroupé/Nombre d'occurrences)

Maroc : 4
tunisie : 6
lybie : 1
Tchad : 20

etc.

Actuellement, je fais un
NB.SI(Données!Y:Y;"Maroc)
pour chaque cellule. Seulement, la liste est assez longue, et j'aimerais faire un traitement automatique qui me cherches les différentes champ qui peuvent apparaitre, et qui me met dans la colonne suivante, le nombre de fois où ils apparaissent ! Ca m'évite d'avoir à tout taper (même si une partie du travail est déjà faite), et surtout, si un nouveau pays apparait, il n'est pas utile de rajouter à la main une ligne (tout serait fait automatiquement)
J'imagine que ça ne doit pas être très compliqué, mais il faut savoir où chercher.

Deuxième question, dans mon NB.SI, j'aimerais regrouper plusieurs critères, par exemple, NB.SI(Données!U:U, "Critère 1" et "Critère 2") où il me compterais directement le nombre d'occurence du critère 1 et du critère 2, sommées. Pour le moment, je fais un
NB.SI(Données!U:U, "Critère 1")+NB.SI(Données!U:U, "Critère  2")  

Mais y a t il une méthode plus propre de le faire ? (plutôt que d'appeler deux fois la même fonction, concaténer les critères de tri donnés en argument)


Merci d'avance

1 réponse

michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 310
15 févr. 2010 à 17:05
Bonjour
en mettant une étiquette au dessus de ta liste comme par ex 'pays", sans écrire de formule, tu pourrais utiliser un rapport de tableau croisé dynamique

pour la 2° question
=sommeprod(((U2:U10000="maroc")+(U2:U10000="mali"))*1)

nota SOMMEPROD n'admet pas les colonnes entières
0