책 내용 질문하기
기본급이 가장 큰 값과 기본급 평균의 차이 구하는 배열수식!
도서
[2013] 컴퓨터활용능력 1급 실기(엑셀, 액세스 2007 사용자용)
페이지
461
조회수
37
작성일
2013-02-08
작성자
첨부파일

안녕하세요.

질문을 몇 번 올렸는데 그때마다 정확하게 답변해 주셔서 늘 감사하고 있습니다 ^^

461페이지 3번문제에서

답을 아래처럼 적었는데

=MAX(($B$12:$B$27=$A3)*($F$12:$F$27))-AVERAGE(($B$12:$B$27=$A3)*($F$12:$F$27)

답을 보니 IF를 섞어서 답을 쓰더군요.

게시판을 검색해보니까 비슷한 질문에

평균값이 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문과 함께 사용해야 합니다.

문제에서 if 문까지 쓰라고 한다면 if문을 꼭 쓰셔야 하구요. 그렇지 않다면 if문을 생략 하셔도 상관 없습니다. 하지만 위의 설명과 같다는 것은 꼭 생각해 두셔야 합니다.

이렇게 답변해 주셨던데

그럼 average,median,small,min 등은 조건을 달 땐

무조건, 100% *이 아닌 IF만을 사용해야 하나요? 배열수식 안 쓸 때도?

그리고 이처럼 조건을 달 때 IF를 사용해야만 하는 그 밖의 함수가 궁금합니다~

어느덧 설 연휴라 답변은 늦을지 모르겠지만 ㅜ.ㅜ

새해 복 많이 받으시고 언제나 감사합니다 ^^

답변
2013-02-13 07:52:54

if 를 사용하지 않았을때

조건이 거짓일때의 값이 포함되므로 정확한 값이 나오지 않는 것입니다.

배열 수식을 사용하지 않을때는 상관이 없습니다.

배열 수식에서는 if와 함께 사용되어야만 정확한 값이 나온다는 것을 알고 계시면 될 것 같습니다.

좋은 하루 되세요.

"
  • *
    2013-02-13 07:52:54

    if 를 사용하지 않았을때

    조건이 거짓일때의 값이 포함되므로 정확한 값이 나오지 않는 것입니다.

    배열 수식을 사용하지 않을때는 상관이 없습니다.

    배열 수식에서는 if와 함께 사용되어야만 정확한 값이 나온다는 것을 알고 계시면 될 것 같습니다.

    좋은 하루 되세요.

    "
· 5MB 이하의 zip, 문서, 이미지 파일만 가능합니다.
· 폭언, 욕설, 비방 등은 관리자에 의해 경고없이 삭제됩니다.