0044

Plus tôt, nous avons appris à compter les valeurs uniques dans une plage. Nous avons également appris à extraire des valeurs uniques d’une plage. Dans cet article, nous allons apprendre à compter une valeur unique dans la plage avec une condition dans Excel.

Formule générique

{=SUM(--(FREQUENCY(IF(condition,MATCH(range,range,0)),ROW(range)-ROW(firstCell in range)+1)>0))}

Il s’agit d’une formule matricielle, utilisez CTRL + MAJ + ENTRÉE Condition: Les critères sur lesquels vous souhaitez obtenir des valeurs uniques.

Plage: plage dans laquelle vous souhaitez obtenir des valeurs uniques.

firstCell in range: C’est la référence de la première cellule de range.

Si la plage est A2: A10, alors c’est A2.

Exemple:

Ici, j’ai ces données de noms. Les classes correspondantes sont mentionnées dans la colonne adjacente. Nous devons compter les noms uniques dans chaque classe.

0045

En utilisant la formule générique ci-dessus, écrivez cette formule dans E2

{=SUM(--(FREQUENCY(IF(B2:B19="Class 1",MATCH(A2:A19,A2:A19,0)),ROW(A2:A19)-ROW(A2)+1)>0))}

La formule ci-dessus renvoie la valeur unique dans la plage Excel A2: A19 à la condition B2: B19 = « Classe 1 ».

0046

Pour obtenir des valeurs uniques dans différentes classes, modifiez les critères. Nous l’avons codé en dur ici, mais vous pouvez également donner une référence à la cellule. Utilisez des plages nommées ou un référencement absolu pour les plages, si vous ne voulez pas qu’elles changent trop.

Comment ça marche?

Décomposons-le de l’intérieur.

link: / tips-if-condition-in-excel [IF] (B2: B19 = « Class 1 », link: / lookup-formulas-excel-match-function [MATCH] (A2: A19, A2 : A19,0)) B2: B19 = « Classe 1 » *: Cette partie retournera un tableau de vrai et faux.

VRAI pour chaque match.

\ {TRUE; FALSE; TRUE; FALSE; TRUE; TRUE; FALSE….} MATCH (A2: A19, A2: A19,0) *:

cette partie renverra le premier emplacement de chaque valeur dans la plage A2: A19 selon la propriété de MATCH.

\ {1; 2; 1; 4; 5; 4; 1; 8; 9; 1; 2; 1; 4; 5; 4; 1; 8; 9}.

Maintenant, pour chaque valeur TRUE, nous obtiendrons la position et pour false, nous obtiendrons FALSE. Donc, pour toute l’instruction IF, nous obtiendrons \ {1; FALSE; 1; FALSE; 5; 4; FALSE; FALSE; FALSE; FALSE; 2; FALSE; FALSE; 5; FALSE; 1; 8; FALSE}.

Ensuite, nous passons à la partie fréquence.

link: / statistics-formules-excel-frequency-function-2 [FREQUENCY] (link: / tips-if-condition-in-excel [IF] (B2: B19 = « Class 1 », link: / lookup-formulas-excel-match-function [MATCH] `(A2: A19, A2: A19,0)), lien: / lookup-and-reference-excel-row-function [ROW] (A2: A19 ) -`link: / lookup-and-reference-excel-row-function [ROW] `(A2) +1) lien: / lookup-and-reference-excel-row-function [ROW] `(A2: A19 ): * Ceci renvoie le numéro de ligne de chaque cellule de la plage A2: A19.

\ {2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12; 13; 14; 15; 16; 17; 18; 19} link: / lookup-and-reference-excel- fonction-ligne [ROW] `(A2: A19) -`link: / recherche-et-référence-Excel-fonction-ligne [ROW] (A2):

Maintenant, nous soustrayons le premier numéro de ligne de chaque numéro de ligne. Cela renvoie un tableau de numéros de série à partir de 0.

\ {0; 1; 2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12; 13; 14; 15; 16; 17} Puisque nous voulons avoir un numéro de série commençant à 1, nous ajoutez-y 1.

lien: / lookup-and-reference-excel-row-function [ROW] (A2: A19) -`link: / lookup-and-reference-excel-row-function [ROW] `(A2) +1.

Cela nous donne un tableau de numéros de série à partir de 1.

\ {1; 2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12; 13; 14; 15; 16; 17; 18} Cela nous aidera à obtenir un décompte unique sur condition.

Maintenant nous avons:

lien: / statistiques-formules-excel-fréquence-fonction-2 [FRÉQUENCE] (\ {1; FALSE; 1; FALSE; 5; 4; FALSE; FALSE; FALSE; FALSE; 2; FALSE; FALSE; 5; FAUX; 1; 8; FAUX}, * \ {1; 2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12; 13; 14; 15; 16; 17; 18})

Ceci renvoie la fréquence de chaque nombre dans un tableau donné. \ {3; 1; 0; 1; 2; 0; 0; 1; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0 } Ici, chaque nombre positif indique l’occurrence d’une valeur unique lorsque les critères sont remplis. Nous devons compter les valeurs supérieures à 0 dans ce tableau.

Pour cela, nous le vérifions par> 0. Cela renverra VRAI et FAUX. Nous convertissons vrai faux en utilisant – (double opérateur binaire).

lien: / math-and-trig-excel-sum-function [SUM] (- (\ {3; 1; 0; 1; 2; 0; 0; 1; 0; 0; 0; 0; 0 ; 0; 0; 0; 0; 0; 0})> 0) cela se traduit par SUM (\ {1; 1; 0; 1; 1; 0; 0; 1; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0})

Et enfin, nous obtenons le nombre unique de noms dans la plage sur des critères comme 5.

Je sais que c’est un peu complexe à comprendre, mais vous le vérifiez à partir de l’option d’évaluation de la formule.

Pour compter des valeurs uniques avec plusieurs critères, nous pouvons utiliser la logique booléenne:

Compter la valeur unique avec plusieurs critères avec et logique

{=SUM(--(FREQUENCY(IF(condition1 * Condition2,MATCH(range,range,0)),ROW(range)-ROW(firstCell in range)+1)>0))}

La formule générique ci-dessus peut compter des valeurs uniques sur plusieurs conditions et lorsque toutes sont vraies.

Compter la valeur unique avec plusieurs critères avec ou logique

{=SUM(--(FREQUENCY(IF(condition1 + Condition2,MATCH(range,range,0)),ROW(range)-ROW(firstCell in range)+1)>0))}

Cette formule générique peut être utilisée pour compter des valeurs uniques avec la logique Or.

Cela signifie que cela comptera si l’une des conditions est vraie.

Alors oui les gars, voici comment compter les valeurs uniques dans une plage dans plusieurs conditions. C’est un peu complexe mais c’est rapide. Une fois que vous commencez à l’utiliser, vous comprendrez comment cela fonctionne.

Si vous avez des doutes concernant cet article sur les formules Excel, faites-le moi savoir dans la section commentaires ci-dessous.

Télécharger le fichier: