배열 수식을 사용할 수있는 경우 표준 방법이 있습니다.
필자는 단일 셀에 답을 원하므로 배열 수식을 피할 특별한 이유가 없어야합니다. (다중 셀 배열 수식의 일반적인 이유는 수식 변경과 관련된 문제 및 관련 문제 때문입니다. 배열 수식이 차지하는 블록은 하나의 셀 블록으로 병합되는 것과 매우 유사하게 작동 할 수 있습니다.)
(이것은 단지 길기 때문에 단계를 충분히 철회 할 수 있으므로 내가 보여 주어야 할 사소한 세부 사항에 열중하지 않습니다.)
그렇다면 개념은 다음과 같습니다.
끝 수식은 Control-Shift-Enter ( "CSE")를 사용하여 입력 한 배열 수식 자체 일뿐만 아니라 해당 부분을 배열로 만듭니다.
하나의 배열에는 합산하려는 값이 포함될 수 있습니다 (이 경우 B10 : M76). 두 번째 배열은 원하는 텍스트의 범위이고 세 번째 배열은 null / blank / empty 조건에 대해 테스트되는 범위입니다.
첫 번째 배열의 목적은 추가 할 값을 넣는 것입니다. 두 번째와 세 번째 배열의 목적은 동일합니다. 필요한 테스트를 수행하고 각 테스트에 대한 논리적 실마리를 반환합니다. 논리적 가치? 테스트 성공 또는 실패에 따라 TRUE 또는 FALSE를 반환하게됩니다.
수학 연산을 수행하면 Excel에서 해당 논리 값을 1과 0으로 처리합니다. 따라서 행복한 텍스트 열은 수학을 수행하면 {1; 0; 1; 1; 0; ... 등 ..}으로 작동하는 {TRUE; FALSE; TRUE; TRUE; FALSE; ... etc.}를 생성 할 수 있습니다. 결과에 대한 작업. 종종 하나의 배열에 1을 곱하여이를 수행 할 수 있습니다. 여기에는 솔루션에 대한보다 복잡한 경로가 필요하며 "* 1"을 가져 오는 대신 다른 두 배열을 사용하면됩니다. 세 번째 배열은 null / blank / empty 조건에 대해 셀을 테스트하고 동일한 종류의 TRUE 및 FALSE 배열을 얻는 것과 유사합니다.
따라서 첫 번째 배열은 합산 값의 범위를 배열에 배치하고 두 번째 및 세 번째 배열은 두 가지 테스트의 TRUE 및 FALSE 결과입니다. 두 테스트 중 하나라도 실패하면 다른 테스트 결과에 0을 곱하여 0과 일치하는 합산 값을 곱합니다. 따라서 두 테스트 중 하나라도 실패하면 해당 행의 합산 값에 0이 곱해지고 SUM () 함수에 의해 0이 추가됩니다.이 두 테스트가 모두 성공하면 해당 행의 합산 값에 1이 곱해집니다 Excel이 SUM () 함수에 제공하는 최종 배열로 끝납니다.
그런 식으로 SUM ()은 어떤 방식 으로든 실패한 행에 대해 아무것도 추가하지 않으므로 테스트가 성공한 값만 결과에 나타납니다.
당신이 원하는 것입니다.
이 경우 성공하면 TRUE를 생성하도록 첫 번째 테스트를 작성해야합니다. 다음과 같은 것 :
(B1:B6="City of Tampa")
두 번째 테스트는 테스트가 실패하면 1을 생성하도록 작성해야합니다. 따라서 "일치하지 않는"종류로 작성하거나 "긍정적 인"방식으로 작성하지만 NOT ()으로 랩핑하십시오. 기능:
(C1:C6<>"")
(NOT(C1:C6=""))
(어떻게 든 접근하는 것이 당신에게 가장 합리적이며 앞으로 스프레드 시트 작업을 할 수있게 해줄 것입니다. 모든 사람은 여기가 다르고 감독관은 때때로 요구 사항을 표현하여 감사하고 올바른 답변을 제공 할 수 있도록 편안하게 답변 할 수 있습니다.)
첫 번째 배열은 상당히 간단합니다. 값의 범위 만 모두 합칠 수 있습니다.
A1:A6
테스트 부분 (두 번째 및 세 번째 배열)을 괄호로 묶어야하지만 첫 번째 배열에 대해서는 그렇게 할 필요는 없습니다. 그러나 원하는 경우 가능합니다.
그런 다음 모두 모아서 SUM () 함수로 감싸십시오.
{=SUM( A1:A6 * (B1:B6="City of Tampa") * (C1:C6<>"") )}
( "CSE"를 누르면 위의 내용을 감싸는 {}가 추가됩니다.)
이 접근법은 합산에 대한 다양한 변형뿐만 아니라 다양한 다른 기능과 함께 사용할 수 있습니다. 실제로, 일부는 "CSE"를 사용하여 전체 최종 수식을 입력 할 필요조차 없습니다. 중간 작업에서 배열을 사용하더라도 완전히 정규식이 될 수 있습니다. 따라서 위의 내용을 따르면이 문제를 많은 문제에 적용 할 수 있습니다.
나는 당신의 문제를 정확하게 재현하지 않았으므로 (따라서 예제의 간단한 범위) 종종 여러 열 및 행 범위에서 작동하려면 약간의 추가 작업이 필요합니다. 다중 행 OR 다중 열 범위는 여전히 단일 라인 매트릭스와 같은 단일 행 배열입니다. 행과 열을 만들면 3x4 행렬과 같은 여러 행이있는 Excel 배열이 필요합니다. 오류가 발생하면이를 "풀고"Excel에서 해당 범위를 단일 행 배열로 간주하도록해야합니다. 예를 들어 명명 된 범위를 사용하여 단일 열 (또는 쓰기 쉬운 행)을 단일 범위로 가져옵니다. 다른 트릭도 있습니다. 하나는 수식을 작성하여 범위의 열에 대해 하나의 계산 집합을 수행하고 두 번째 열에 대한 두 번째 계산 집합에 추가하는 것입니다. 동일한 열 집합이 각 열 집합에 대해 이동되었습니다. 그러나 일반적으로 너무 많은 문제없이 팔꿈치 그리스만으로 자갈을 쌓을 수 있습니다.
마지막으로, 일부 수식은 배열을 사용하지만 CSE 입력 수식 자체 일 필요는 없습니다. 그러나 이상하게도, 매번 호머 "Doh!"처럼 매번 이해가되는 이유를 알 때까지 CSE를 입력 한 것과 정확히 다른 결과를 얻을 수 있습니다. 그렇다면 CSE 입력 버전은 항상 올바른 버전이지만 매번 확인해야합니다.