책 내용 질문하기
질문드립니다..
도서
[2010] 컴퓨터활용능력 1급 실기(엑셀, 액세스 2007 사용자용)
페이지
88
조회수
53
작성일
2012-01-18
작성자
첨부파일

어제 질문 올리고 답변까지 보았는데 잘 이해가 안됩니다..

그러니까 컴활함수사전+계산문제20+최신기출10회 책 88page 3번 문제보면요

답은

{ =MAX( ($B$12:$B$27=A3) * $F$12:$F$27) - AVERAGE( IF( ($B$12:$B$27=A3, $F$12:$F$27 ))}

인데 왜 MAX쓸 땐 IF를 안쓰고 AVERAGE 쓸 땐 IF를 쓴건가요?

AVERAGE도 IF문 안쓰고 괄호랑 * 로 조건 성립시켜주면 될 것 같은데

왜 이렇게 쓰는지 알고 싶습니다. 또 AVERAGE는 괄호랑 *로 조건 만들면 틀리게 나오더라구요.

너무 궁금합니다.

답변
2012-01-19 03:39:53

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

IF를 안쓴 이거는 왜 안되냐... 이 말씀이신데요..

저 배열수식을 좌라라락 풀면 역시 참조건이 있긴 있겠죠....

거짓조건도 분명히 나올 거구요...

근데 AVERAGE는 저 참조건 거짓조건 합쳐서 평균을 구해버려요..

(음 말이 너무 어렵나..) 암튼 예를 들어보죠...

배열수식을 푼 결과 참이 5개고 각각의 값이 100이다 그리고 거짓조건도 5개다...라고 해보죠..

(거짓은 0이겠죠.. *로 연결됬으니까요..)

MAX함수는 안에 IF가 없어도 조건에서 나온 값의 MAX값만 구하는 거니까 상관이 없습니다.

거짓이 몇개든간에 나온 값중에 최대값만 나올 겁니다.

그럼 IF안쓴 AVERAGE는 어찌되냐....

100 100 100 100 100 이 참조건의 값의 평균을 구해서 100이 나오는게 아니라...

100 100 100 100 100 0 0 0 0 0 이 값의 평균을 구해서.. 50이 나옵니다.

한마디로 거짓 값도 인수로 계산에 포함을 시켜버린다는 뜻이지요..

그래서... 이런 결과를 나오지 않게 하기위해 안에 IF를 넣어 줌으로써.. 참조건만 뽑아내는 겁니다..

* 그럼 여기서 의문점이 나올 수도 있을거라 봅니다.

IF( 조건, 범위 ) 여기도 거짓조건이 있을 수 있는거 아니냐 할 수도 있습니다.

위 IF식은 원래 IF(조건, 범위, "") 이렇게 됩니다.

거짓값은 "" 0도 아니고 그냥 아무것도 없습니다.

그냥 IF( 조건, 범위 ) 이대로 계산에 들어가면 참밖에 안나옵니다.

좀 이해가 되실런지 모르겠네욤..

  • *
    2012-01-19 03:39:53

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

    IF를 안쓴 이거는 왜 안되냐... 이 말씀이신데요..

    저 배열수식을 좌라라락 풀면 역시 참조건이 있긴 있겠죠....

    거짓조건도 분명히 나올 거구요...

    근데 AVERAGE는 저 참조건 거짓조건 합쳐서 평균을 구해버려요..

    (음 말이 너무 어렵나..) 암튼 예를 들어보죠...

    배열수식을 푼 결과 참이 5개고 각각의 값이 100이다 그리고 거짓조건도 5개다...라고 해보죠..

    (거짓은 0이겠죠.. *로 연결됬으니까요..)

    MAX함수는 안에 IF가 없어도 조건에서 나온 값의 MAX값만 구하는 거니까 상관이 없습니다.

    거짓이 몇개든간에 나온 값중에 최대값만 나올 겁니다.

    그럼 IF안쓴 AVERAGE는 어찌되냐....

    100 100 100 100 100 이 참조건의 값의 평균을 구해서 100이 나오는게 아니라...

    100 100 100 100 100 0 0 0 0 0 이 값의 평균을 구해서.. 50이 나옵니다.

    한마디로 거짓 값도 인수로 계산에 포함을 시켜버린다는 뜻이지요..

    그래서... 이런 결과를 나오지 않게 하기위해 안에 IF를 넣어 줌으로써.. 참조건만 뽑아내는 겁니다..

    * 그럼 여기서 의문점이 나올 수도 있을거라 봅니다.

    IF( 조건, 범위 ) 여기도 거짓조건이 있을 수 있는거 아니냐 할 수도 있습니다.

    위 IF식은 원래 IF(조건, 범위, "") 이렇게 됩니다.

    거짓값은 "" 0도 아니고 그냥 아무것도 없습니다.

    그냥 IF( 조건, 범위 ) 이대로 계산에 들어가면 참밖에 안나옵니다.

    좀 이해가 되실런지 모르겠네욤..

  • *
    2012-01-19 08:49:20

    =MEDIAN(1,2,3,4,5,6,7,8,9,10) 을 하면 중간값은 5.5가 나옵니다.

    그런데

    =MEDIAN(1,2,0,4,5,0,0,8,0,10)

    처럼 중간중간에 0이 들어가게 되면 1.5가 나오게 되죠.

    그냥 0값을 제외하고 구하게 되면

    =MEDIAN(1,2,4,5,8,10) 4.5 가 나오게 됩니다.

    이렇게 0이 있느냐 없느냐에 따라 값이 틀리기 때문에 그런 것이죠.

    min의 경우는 0이 포함되면 무조건 최소값이 0이 되기 때문에 0을 제외하기 위해서 if를 같이 사용하셔야 합니다.

    그런데 max의 경우에는 최고값을 구하기 때문에 다른 값이 나오지 않기 때문에 꼭 if를 사용하지 않아도 되는 것이죠.

    좋은 하루 되세요.

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