Formule Excel: compter les valeurs numériques uniques dans une plage -

Table des matières

Formule générique

=SUM(--(FREQUENCY(data,data)>0))

Sommaire

Pour compter des valeurs numériques uniques dans une plage, vous pouvez utiliser une formule basée sur les fonctions FREQUENCY et SUM. Dans l'exemple illustré, les numéros d'employés apparaissent dans la plage B5: B14. La formule en F5 est:

=SUM(--(FREQUENCY(B5:B14,B5:B14)>0))

qui renvoie 4, car il y a 4 identifiants d'employés uniques dans la liste.

Explication

Remarque: Avant Excel 365, Excel n'avait pas de fonction dédiée pour compter les valeurs uniques. Cette formule montre une façon unique de compter les valeurs uniques, à condition qu'elles soient numériques. Si vous avez des valeurs de texte ou un mélange de texte et de nombres, vous devrez utiliser une formule plus compliquée.

La fonction Excel FREQUENCY renvoie une distribution de fréquence, qui est un tableau récapitulatif qui montre la fréquence des valeurs numériques, organisées en «bins». Nous l'utilisons ici comme un moyen détourné de compter des valeurs numériques uniques.

En travaillant de l'intérieur vers l'extérieur, nous fournissons le même ensemble de nombres pour le tableau de données et le tableau bins à FREQUENCY:

FREQUENCY(B5:B14,B5:B14)

FREQUENCY renvoie un tableau avec un décompte de chaque valeur numérique de la plage:

(4;0;0;0;2;0;1;3;0;0;0)

Le résultat est un peu énigmatique, mais le sens est que 905 apparaît quatre fois, 773 apparaît deux fois, 801 apparaît une fois et 963 apparaît trois fois.

FREQUENCY a une fonction spéciale qui renvoie automatiquement zéro pour tous les nombres qui sont déjà apparus dans le tableau de données, c'est pourquoi les valeurs sont nulles une fois qu'un nombre a été rencontré.

Ensuite, chacune de ces valeurs est testée comme étant supérieure à zéro:

(4;0;0;0;2;0;1;3;0;0;0)>0

Le résultat est un tableau comme celui-ci:

(TRUE;FALSE;FALSE;FALSE;TRUE;FALSE;TRUE;TRUE;FALSE;FALSE;FALSE)

Chaque TRUE représente un numéro unique dans la liste. La SOMME ignore les valeurs logiques par défaut, donc nous contraignons les valeurs TRUE et FALSE à 1 et 0 avec un double négatif (-), ce qui donne:

=SUM((1;0;0;0;1;0;1;1;0;0;0))

Enfin, SUM ajoute ces valeurs et renvoie le total, qui dans ce cas est de 4.

Remarque: vous pouvez également utiliser SUMPRODUCT pour additionner les éléments du tableau.

Utilisation de COUNTIF au lieu de FREQUENCY pour compter les valeurs uniques

Une autre façon de compter des valeurs numériques uniques consiste à utiliser COUNTIF au lieu de FREQUENCY. Il s'agit d'une formule plus simple, mais sachez que l'utilisation de COUNTIF sur des ensembles de données plus volumineux pour compter des valeurs uniques peut entraîner des problèmes de performances. La formule FREQUENCE, bien que plus compliquée, calcule beaucoup plus rapidement.

Bons liens

Le livre de Mike Girvin Control-Shift-Enter

Articles intéressants...