0044

앞서 범위에서 고유 한 값을 계산하는 방법을 배웠습니다. 또한 범위에서 고유 한 값을 추출하는 방법도 배웠습니다. 이 기사에서는 Excel에서 조건을 사용하여 범위의 고유 값을 계산하는 방법을 배웁니다.

일반 공식

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

_ 배열 수식입니다. CTRL + SHIFT + ENTER_를 사용합니다. 조건 : 고유 한 값을 가져올 기준입니다.

범위 : 고유 한 값을 가져 오려는 범위입니다.

firstCell in range : 범위 내 첫 번째 셀의 참조입니다.

범위가 A2 : A10이면 A2입니다.

예 :

여기에 이름 데이터가 있습니다. 해당 클래스는 인접한 열에 언급되어 있습니다. 각 클래스에서 고유 한 이름을 세어야합니다.

0045

위의 일반 공식을 사용하여이 공식을 E2에 작성하세요

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

위의 수식은 B2 : B19 = “Class 1″조건에서 Excel 범위 A2 : A19의 고유 값을 반환합니다.

0046

다른 클래스에서 고유 한 값을 얻으려면 기준을 변경하십시오. 여기에서 하드 코딩했지만 셀 참조도 제공 할 수 있습니다. 너무 변경하지 않으려면 범위에 대해 명명 된 범위 또는 절대 참조를 사용합니다.

어떻게 작동합니까?

내부에서 분해합시다.

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 = “Class 1″* :이 부분은 true와 false의 배열을 반환합니다.

각 일치에 대해 TRUE입니다.

\ {TRUE; FALSE; TRUE; FALSE; TRUE; TRUE; FALSE….}`link : / lookup-formulas-excel-match-function [MATCH]`(A2 : A19, A2 : A19,0) * :

이 부분은 MATCH의 속성에 따라 A2 : A19 범위에있는 각 값의 첫 번째 위치를 반환합니다.

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

이제 각 TRUE 값에 대해 위치를 얻고 false에 대해 FALSE를 얻습니다. 따라서 전체 IF 문에 대해 \ {1; FALSE; 1; FALSE; 5; 4; FALSE; FALSE; FALSE; FALSE; 2; FALSE; FALSE; 5; FALSE; 1; 8; FALSE}가됩니다.

다음으로 주파수 부분으로 이동합니다.

link : / statistical-formulas-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)),link : / lookup-and-reference-excel-row-function [ROW](A2 : A19 ) –link : / lookup-and-reference-excel-row-function [ROW](A2) +1)link : / lookup-and-reference-excel-row-function [ROW](A2 : A19 ) : * 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- 행 함수 [ROW](A2 : A19) – ROW(A2) :

이제 각 행 번호에서 첫 번째 행 번호를 뺍니다. 이것은 0부터 시작하는 일련 번호의 배열을 반환합니다.

\ {0; 1; 2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12; 13; 14; 15; 16; 17} 1부터 시작하는 일련 번호를 원하므로 그것에 1을 더하십시오.

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

이것은 1부터 시작하는 일련 번호의 배열을 제공합니다.

\ {1; 2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12; 13; 14; 15; 16; 17; 18} 이렇게하면 조건에 대한 고유 한 카운트를 얻는 데 도움이됩니다.

이제 우리는 :

link : / statistical-formulas-excel-frequency-function-2 [FREQUENCY](\ {1; FALSE; 1; FALSE; 5; 4; FALSE; FALSE; FALSE; FALSE; 2; FALSE; FALSE; 5; FALSE; 1; 8; FALSE}, * \ {1; 2; 3; 4; 5; 6; 7; 8; 9; 10; 11; 12; 13; 14; 15; 16; 17; 18})

주어진 배열에있는 각 숫자의 빈도를 반환합니다. \ {3; 1; 0; 1; 2; 0; 0; 1; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0 } 여기에서 각 양수는 기준이 충족 될 때 고유 한 값의 발생을 나타냅니다. 이 배열에서 0보다 큰 값을 계산해야합니다.

이를 위해> 0으로 확인합니다. 이것은 TRUE와 FALSE를 반환합니다. -(이중 이항 연산자)를 사용하여 참 거짓을 변환합니다.

link : / 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) 이것은 SUM (\ {1; 1; 0; 1; 1; 0; 0; 1; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0; 0})

마지막으로 기준에 따라 범위 내 고유 한 이름 개수를 5로 얻습니다.

이해하기가 조금 복잡하다는 것을 알고 있지만 수식 평가 옵션에서 확인하십시오.

여러 기준으로 고유 한 값을 계산하려면 부울 논리를 사용할 수 있습니다.

And Logic을 사용하여 여러 기준으로 고유 값 계산

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

위의 일반 수식은 여러 조건에서 모든 조건이 참인 경우 고유 한 값을 계산할 수 있습니다.

OR 논리를 사용하여 여러 기준으로 고유 값 계산

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

이 일반 공식은 Or 논리로 고유 한 값을 계산하는 데 사용할 수 있습니다.

즉, 조건 중 하나라도 참이면 계산됩니다.

예 여러분, 여러 조건에서 범위에서 고유 한 값을 계산하는 방법입니다. 이것은 약간 복잡하지만 빠릅니다. 사용을 시작하면 작동 방식을 알 수 있습니다.

이 엑셀 공식 기사에 대해 의문이 있으시면 아래 의견 섹션에서 알려주십시오.

파일 다운로드 :