배열수식으로 AVERAGE 함수를 이용할 때는 보통 IF 함수도 함께 사용되는데,
굳이 왜 IF 함수를 사용하여 배열수식을 작성해야하는지 궁금해하시는 분들이 종종 계십니다.
그 이유는 IF 함수를 사용할 때와 사용하지 않을 때 결과 값이 다르게 나오기 때문인데,
이유를 함께 알아보도록 하겠습니다.
비디오 품번이 17호인 가격의 평균을 구하고 싶은 상황입니다.
먼저 IF 함수를 사용한 배열수식으로 값을 나타내면
표 2와 같은 값이 나오고
IF 함수를 제외하고 배열수식을 작성해 보면
평균이 다른 값으로 나옵니다.
결론부터 이야기하자면
IF 함수를 사용한 AVERAGE 배열수식이 정답입니다.
왜 그런지 알아보겠습니다.
먼저 IF 함수를 사용한 AVERAGE 배열수식 부터 알아봅시다.
빨간 박스의 의미는
'만일 [표 1]에서 17호를 찾았으면 17호의 가격을 출력하고
아니라면 값을 생략해버려라'
라는 의미입니다.
즉 빨간 박스의 수식을 통해 결과적으로
10000, 32000, 52000 이 AVERAGE 함수의 인수로 들어올 것이고
결과 값은
AVERAGE ( 10000, 32000, 52000 ) 이 될 것입니다.
10000+32000+52000 = 94000
94000 나누기 3 은 31333.33333....
그러므로 답은 31333.33333....
다음은 IF 함수가 없는 AVERAGE 배열수식입니다.
초록 박스는 [표 1]의 목록에서
품번이 17호인 항목과 17호가 아닌 항목을 찾아
TRUE 값과 FALSE 값을 줍니다.
여기서 중요한 것은
FALSE에도 값을 준다는 것입니다.
(*IF 함수는 FALSE일 때 값을 생략했었습니다.)
FALSE의 값은 0이므로
0인 FALSE 값은 TRUE와 마찬가지로
주황색 박스에 곱해집니다.
그러므로 각 항목의 전체 값은
( 0, 10000, 0, 32000, 0, 0, 0, 0, 0, 0, 52000 ) 이 될 것입니다.
AVERAGE 는 인수로 11개의 인수를 받게되고
결과값은 AVERAGE( 0, 10000, 0, 32000, 0, 0, 0, 0, 0, 0, 52000 )이 될 것입니다.
인수의 합은 94000으로 IF 함수일 때와 동일하지만
인수의 개수가 11개이기때문에 평균으로 나눌 값은 11이 됩니다.
이 부분에서 IF 함수를 사용했을 때와의 차이점이 나오는 것입니다.
즉, 구해지는 평균 값이
94000 나누기 3이 아니라
94000 나누기 11이 되어서
정상적인 값을 출력하지 못하는 것입니다.
'강의 및 공부 > 엑셀실기 강의 [완료]' 카테고리의 다른 글
[061] Excel 계산작업 - MEDIAN 함수 (2) | 2014.08.15 |
---|---|
[060] Excel 계산작업 - LARGE 함수와 SMALL 함수 (0) | 2014.08.15 |
[058] Excel 계산작업 - IF 함수가 들어간 배열수식 (20) | 2014.08.15 |
[057] Excel 계산작업 - 배열수식 (25) | 2014.08.15 |
[056] Excel 계산작업 - 연산식을 DATABASE 함수에 참조해야 할 경우 (0) | 2014.08.15 |