부록90쪽(large함수), 94쪽(small함수)에 관한 배열수식 질문입니다
90쪽 LARGE함수는
LARGE(IF(조건, 몇번째 값을 구할범위), 몇번째)
LARGE((조건)*몇번째 값을 구할 범위, 몇번째)
두 가지 경우 모두 답이 같이 나오는데요
=LARGE(IF($C$7:$C$12=B3,$E$7:$E$12),2)
=LARGE(($C$7:$C$12=B3)*$E$7:$E$12,2)
94쪽 SMALL함수는
SMALL(IF(조건, 몇번째 값을 구할범위), 몇번째)
SMALL((조건)*몇번째 값을 구할 범위, 몇번째)
두 가지 수식을 입력하였을 경우 첫번째 수식으로는 입력하면 답이 나오는데 두번째 수식으로은 오류가 뜨네요 LARGE함수 썼을 때 처럼 맞게 입력한 것 같은데 제가 수식입력을 잘못한건지, 아니면 SMALL함수는 배열수식에서 IF와 같이 쓰는 수식으로만 가능한건지 궁금해서요...아래는 제가 입력한 수식이구요 어디 틀렸는지 봐주세요
책의 풀이 =SMALL(IF($C$7:$C$12=B3,$E$7:$E$12),1)
제가 입력한 식 =SMALL(($C$7:$C$12=B3)*$E$7:$E$12,1)
1편 엑셀 112 페이지 설명입니다.
평균값이 186,503이 나왔어요.
if문을 입력할때 if(B11:B29=B3,G11:G29)처럼 작성하는 것은 조건이 거짓일 경우 "반환할 값"이 생략 (if(B11:B29=B3,G11:G29,"반환할 값"))된 것으로, if(B11:B29=B3,G11:G29,"")과 같이 조건의 값이 거짓일 때 이론적으로 아무값도 없는 NULL값을 반환 하라는 뜻입니다. NULL값이 반환되면 아무것도 없는 것이기 떄문에 AVERAGE 함수의 배열요소에서 제외 됩니다. 그런데 만약 배열 수식을 AVERAGE(IF(B11:B29=B3,G11:G29,0)이나 AVERAGE((B11:B29=B3)*(G11:G29)와 같이 작성하면 조건이 거짓일때 0이 AVERAGE함수로 포함되어 평균이 계산 되는 것입니다. 즉 '=AVERAGE(550000.1650000,4000000,165000,770000)' 와 '=AVERAGE(550000.1650000,4000000,165000,770000,0...)'의 차이겠죠. 같은 이유로 MIN, MEDIAN,SMALL 등의 함수도 반드시 IF문과 함께 사용해야 합니다.
좋은 하루 되세요.
-
*2013-05-07 12:41:48"
1편 엑셀 112 페이지 설명입니다.
평균값이 186,503이 나왔어요.
if문을 입력할때 if(B11:B29=B3,G11:G29)처럼 작성하는 것은 조건이 거짓일 경우 "반환할 값"이 생략 (if(B11:B29=B3,G11:G29,"반환할 값"))된 것으로, if(B11:B29=B3,G11:G29,"")과 같이 조건의 값이 거짓일 때 이론적으로 아무값도 없는 NULL값을 반환 하라는 뜻입니다. NULL값이 반환되면 아무것도 없는 것이기 떄문에 AVERAGE 함수의 배열요소에서 제외 됩니다. 그런데 만약 배열 수식을 AVERAGE(IF(B11:B29=B3,G11:G29,0)이나 AVERAGE((B11:B29=B3)*(G11:G29)와 같이 작성하면 조건이 거짓일때 0이 AVERAGE함수로 포함되어 평균이 계산 되는 것입니다. 즉 '=AVERAGE(550000.1650000,4000000,165000,770000)' 와 '=AVERAGE(550000.1650000,4000000,165000,770000,0...)'의 차이겠죠. 같은 이유로 MIN, MEDIAN,SMALL 등의 함수도 반드시 IF문과 함께 사용해야 합니다.
좋은 하루 되세요.