2, 5, 8 의 값을 갖는 총 3개의 열 중에 2번째 열에 있는 값이므로 2가 반환된 것입니다.
예제)
● 입력하고, 함수 적용 후, 결과값을 확인하세요.
MATCH 함수를 이용하여 실험 결과 영역에서 점수가 속해 있는 상대적 위치를 찾아보겠습니다.
함수식) =MATCH(B3,$B$10:$B$15,1)
=MATCH(B3,$B$10:$B$15,1) : 59를 찾는데, 옵션이 1이므로 59보다 작거나 같은 값 중 가장 근접한 값을 찾습니다. 59보다 작은 값 중 가장 근접한 값 50을 찾아 [B10:B15]에서의 상대적인 위치인 1이 [C3] 셀에 입력됩니다.
결과)
★ 컴활1급 기출문제)
‘중간+기말’의 값을 기준으로 [등급표]의 구간종료 영역을 참조하여 점수 등급을 계산하시오.
정답
[F3] : =MATCH(D3+E3,$C$12:$C$14,-1)&"등급“
설명 : 55보다 크거나 같은 값중에서 가장 작은 값을 찾습니다. 60을 찾은 후 60이 있는 위치 1을 반환합니다.
결과)
★★★★ 여러 범위를 선택하는 경우 // MATCH 함수, 배열수식을 이용
이런 경우는 배열 수식을 이용해서 여러 조건이 모두 들어맞는 열, 또는 행을 찾는데 사용합니다.
문제) 나이가 27살이고, 도시는 부산인 사람의 행의 값을 찾아 보도록 합니다.
▲ 위 식은 여러개의 조건을 만족하는 행의 값을 찾아주는 식입니다. 이 식이 어떻게 동작하는지 이해하기 위해서 배열 수식을 제대로 알고 있어야 합니다. 우선 배열 수식을 만들려면 수식을 입력한 후에 엔터를 누르지 말고 대신 Ctrl+Shift+Enter 를 눌러줍니다. 이렇게 누르면 위 그림과 같이 수식을 감싸는 {수식} 중괄호가 생깁니다. 이렇게 수식이 배열수식이 되면 범위간에 연산이 가능해집니다. 단 연산에 쓰일 범위간에 형태는 같아야겠죠. 예를들어 1행 10열의 범위 + 1행 10열의 범위 처럼 말이죠.
위 식 역시 (B3:B10=27)*(C3:C10="부산") 이라는 범위간에 연산이 있습니다. 그리고 범위 간에 상대적으로 동일한 위치에 있는 요소간에 계산이 됩니다. 좀 생소할 수도 있으므로 차근차근 확인을 해보도록 하겠습니다.
먼저 B3의 셀이 27인지 검사해서 맞다면 1 틀리면 0을 반환합니다. 이와 동시에 C3의 셀이 "부산"인지 아닌지에 때라 1 또는 0을 반환하죠.
만약 이 두 조건이 모두 맞다면 둘 다 1을 반환하여 *(곱셈)의 결과 1이 반환됩니다. 이렇게 계산된 결과는 배열의 요소로 저장되게 됩니다. 이렇게 해서 위 식의 계산 결과는 다음과 같은 식이 됩니다.
=MATCH(1, {0;0;0;1;0;0;0;0}, 0)
{0;0;0;1;0;0;0;0}은 8행1열의 배열을 나타냅니다. 다음과 같은 것이죠.
★ ; (세미콜론)으로 구분되어 있다면 행을 구분
데이터간에 ;(세미콜론으로 구분되어 있다면 행을 구분해 주고 만약 ,(콤마)로 나뉘었다면 열을 구분해 줍니다.
어찌되었건 위 식을 해석하면 해당 배열에 1의 값의 위치가 어디있냐는 것입니다. 즉 27살에 "부산"인 행을 찾는 것과 동일합니다. 그래서 4가 반환된 겁니다.