Comment compter le nombre de valeurs uniques dans un tableau ?
Dans cet article, nous allons voir à travers un cas pratique comment compter des valeurs uniques dans Excel avec des formules, et comment faire la même chose simplement avec un tableau croisé dynamique.
Compter des valeurs uniques dans Excel avec une formule
EDIT : Vous avez une licence Excel Office 365 ? Dans ce cas, allez à la fin de l’article pour découvrir une nouvelle formule pour obtenir une liste d’éléments uniques d’un tableau.
Par exemple, nous avons les données de ventes suivantes, et nous souhaitons tout d’abord extraire le nombre de catégories d’item.
Pour compter le nombre d’item distincts, utilisez la formule suivante :
{=SOMME(1/NB.SI($E$4:$E$46;$E$4:$E$46))} |
Le résultat de la formule nous indique qu’il y a 5 catégories d’item (crayon, classeur, stylo, pack stylos, bureau).
Note : Il s’agit d’une formule matricielle, par conséquent, vous devez appuyer sur Ctrl + Shift + Entrée au lieu de la touche Entrée pour saisir la formule.
Extraire une liste de valeurs distinctes dans une colonne
Maintenant on souhaite extraire la liste des responsables des ventes comme dans la capture ci-dessous :
- Entrez la formule suivante dans la cellule L8 :
=RECHERCHE(2;1/(NB.SI($L$7:L7;$D$4:$D$46)=0);$D$4:$D$46) - Recopiez la formule dans les lignes du dessous pour obtenir la liste des valeurs distinctes
Compter les valeurs uniques basées sur un critère
Maintenant que nous avons la liste des responsables des ventes, nous souhaitons savoir combien chacun a vendu de produits uniques, comme dans la capture ci-dessous.
Pour cela, entrez la formule matricielle suivante dans la cellule M8 :
{=SOMME(SI(L8=$D$4:$D$46; 1/(NB.SI.ENS($D$4:$D$46; L8; $E$4:$E$46;$E$4:$E$46)); 0))} |
Dans la formule ci-dessus, la cellule L8 contient le nom du premier responsable dont vous souhaitez compter les valeurs distinctes de produits vendus, D4:D46 est la liste des responsables, E4:E46 est la liste des produits vendus dans le tableau de données.
Rappel : Vous devez appuyer sur Ctrl + Shift + Entrée au lieu de la touche Entrée pour valider la saisie de la formule.
Compter des valeurs uniques dans Excel avec un tableau croisé dynamique
Les dernières versions Excel 2013 et Excel 2016 ont une fonctionnalité spéciale qui permet de comptabiliser automatiquement des valeurs distinctes dans un tableau croisé dynamique. La capture d’écran suivante montre cela :
Pour créer un tableau croisé dynamique avec le comptage de valeurs distinctes, procédez comme suivant :
- Sélectionnez les données à inclure dans le TCD, allez dans l’onglet Insertion -> Tableaux, puis cliquez sur le “Tableau croisé dynamique”
- Dans la boîte de dialogue Créer un tableau croisé dynamique, sélectionnez vos options, puis assurez-vous bien de cocher la case “Ajouter ces données au modèle de données”
- Lorsque le TCD s’ouvre, organisez les zones Lignes, Colonnes et Valeurs comme vous le souhaitez. Si vous n’avez pas beaucoup d’expérience avec les tableaux croisés dynamiques Excel, vous pouvez lire cet article Créer un tableau croisé dynamique
- Déplacez le champ dont vous souhaitez calculer le nombre distinct (champ Item dans cet exemple) dans la zone Valeurs, cliquez dessus et sélectionnez “Paramètres des champs de valeurs…” dans le menu déroulant :
- La boîte de dialogue Paramètres des champs de valeurs s’ouvre, Allez tout en bas de la liste jusqu’à Total distinct, qui est la dernière option de la liste, sélectionnez-la et cliquez sur OK
C’est terminé ! Le tableau croisé nouvellement créé affichera le compte distinct des produits vendus pour chaque responsable.
NOUVELLE FORMULE UNIQUE
Excel comprend désormais 8 nouvelles fonctions dynamiques matricielles qui exploitent directement les tableaux dynamiques pour résoudre des problèmes qui sont traditionnellement difficiles à résoudre avec des formules conventionnelles dont la formule UNIQUE.
La nouvelle formule UNIQUE permet de réaliser avec une formule simple une liste de valeurs uniques. Pour en savoir plus, lisez mon article ici.
Puis pour compter le nombre de valeurs uniques d’une plage, imbriquez la fonction NBVAL dans votre formule, comme ceci :
=NBVAL(UNIQUE(Votre plage de valeurs)) |
A noter :
Un abonnement à Office Microsoft 365 est requis pour bénéficier des formules dynamiques matricielles.
📥TELECHARGER LE FICHIER D’EXEMPLE
Téléchargez le classeur Excel pour ce tutoriel. Seuls votre adresse e-mail et nom vous seront demandés dans la prochaine étape. Vous recevrez le lien de téléchargement par e-mail.
Compter des valeurs uniques dans Excel
Envoyer le lien de téléchargement à :
Bonjour,
Pourquoi parfois la case à cocher “Ajouter ces données au modèle de données” de la fenêtre “Créer un Tableau Croisé Dynamique” apparaît en grisé et est donc non cliquable ?
Merci par avance pour la solution.
cela est peut être du à la version de votre fichier excel (xls au lieu de xlsx)
Ce sont de très bonne astus
Bonjour, comment compter les valleurs uniques lorsqu’on a un tableau et qu’on applique un filtre à la colonne? Merci pour vos réponses!
Bonjour, malgré des heures de recherche, je ne trouve pas…
j’ai une plage à 2 colonnes (date et nom)
je voudrais compter combien il y a de noms DIFFERENTS en fonction d’une date
à l’aide svp
Bonjour Romain,
Essayer de concaténer la date et le nom dans une troisième colonne avec une formule de type C2 = A2 & B2.
Puis appliquez les étapes décrites dans l’article sur cette troisième colonne.
Ca devrait fonctionner.
Lionel
Bonjour Murielle
Vous souhaitez compter le nombre distinct de commandes par client, est-ce bien ça ?
En effet, si vous faites un TCD classique, il va compter le nombre de lignes par client si vous agrégez le champs Commande en Nombre.
Or pour le client x, pour reprendre votre exemple, il y a 4 lignes, mais la commande 456 est présente 2 fois, donc il y a 3 commandes distinctes pour x.
Pour arriver au résultat souhaité, le plus simple à mon avis est de créer un TCD à partir du modèle de données Power Pivot, et vous aurez l’option supplémentaire d’agrégation “Total distinct” qui comptera uniquement les commandes uniques.
J’explique tout cela en détail dans mon programme si cela vous intéresse : https://xlbusinesstools.com/elearning1
Lionel
Euh…
Rien sur la fonction UNIQUE d’Excel ?
Par exemple :
=NBVAL(UNIQUE(B3:B100)) copte le nombre de valeurs distinctes dans la plage.
Bonjour,
Merci pour votre suggestion, j’ai ajouté un paragraphe avec la combinaison NBVAL/UNIQUE 🙂
La formule UNIQUE est traitée dans cet article.
A noter : elle requiert un abonnement Microsoft 365 pour le moment.
Bonjour
Moi je suis sous Office 365 pour Mac, “Paramètres des champs de valeurs…” dans le menu déroulant = n’existe pas.