책 내용 질문하기
질문이요!
도서
[2013] 사무자동화산업기사 실기(오피스 2007 사용자용)
페이지
조회수
163
작성일
2013-07-15
작성자
첨부파일

기출문제 9회 엑셀. 8번

=SUMPRODUCT(ISNUMBER(FIND("최우수",L5:L24))+ISNUMBER(FIND("우수",L5:L24)),K5:K24)

이게 아닌가요...? 설명해주세요 ㅠㅠㅠㅠㅠ

답변
2013-07-16 10:17:05

안녕하세요. 길벗 수험서 운영팀입니다.

FIND(찾을 텍스트, 문자열, 시작 위치) 함수는 찾을 텍스트를 문자열에서 찾아 시작 위치를 반환하는 함수입니다.
최우수에는 우수가 포함되어 있기 때문에 우수를 사용하면 우수(1), 최우수(2)를 모두 찾을 수 있습니다.
그렇기 때문에
=sumproduct(isnumber(find("우수",범위)*1 ,범위))
식을 작성하면 최우수와 우수를 모두 찾습니다.

위의 식대로
=sumproduct(isnumber(find(우수,범위)+sumproduct(isnumber(find(최우수,범위),범위)로 수식을 작성하면
결과적으로 우수+최우수+최우수가 되므로 최우수를 2번 더하므로 올바른 값이 나오지 않습니다.

ISNUMBER 함수는 단순히 숫자면 TRUE, 숫자가 아니면 FALSE를 표시하는 함수로, 1을 곱하여 ‘TRUE’나 ‘FALSE’로 표시된 값을 1이나 0으로 변경하
기 위해서입니다. 일반적으로 TRUE는 1, FALSE는 0으로 취급하므로 TRUE*1=1, FALSE*1=0으로 표시됩니다.
ISNUMBER(FIND("우수",L5:L24))의 결과값은 TRUE나 FALSE로 표시됩니다. 그러므로 곱하기 1을 해주어 TRUE나 FALSE를 1이나 0으로 변경해 주어야 합
니다.

ISNUMBER(FIND("우리",$A$4:$A$23))+ISNUMBER(FIND("해피",$A$4:$A$23))의 경우
ISNUMBER(FIND("우리",$A$4:$A$23))의 결과는 TREU나 FALSE로,
ISNUMBER(FIND("해피",$A$4:$A$23))의 결과도 TRUE나 FALSE로 반환됩니다.
이를 더해주게(+)게 되면 결과는 1이나 0, 즉 TRUE+TRUE=1, TRUE+FALSE=0, FALSE+FALSE=0으로 값이 반환됩니다.
그러므로 1을 곱해줘도 곱해주지 않아도 됩니다.

이해하기가 어렵다면 ISNUMBER가 한번 사용된다면 *1을, 두번 사용된다면 *1을 사용하지 않는다고 생각하시면 됩니다.
행복한 하루되세요.^^
"
  • *
    2013-07-16 10:17:05

    안녕하세요. 길벗 수험서 운영팀입니다.

    FIND(찾을 텍스트, 문자열, 시작 위치) 함수는 찾을 텍스트를 문자열에서 찾아 시작 위치를 반환하는 함수입니다.
    최우수에는 우수가 포함되어 있기 때문에 우수를 사용하면 우수(1), 최우수(2)를 모두 찾을 수 있습니다.
    그렇기 때문에
    =sumproduct(isnumber(find("우수",범위)*1 ,범위))
    식을 작성하면 최우수와 우수를 모두 찾습니다.

    위의 식대로
    =sumproduct(isnumber(find(우수,범위)+sumproduct(isnumber(find(최우수,범위),범위)로 수식을 작성하면
    결과적으로 우수+최우수+최우수가 되므로 최우수를 2번 더하므로 올바른 값이 나오지 않습니다.

    ISNUMBER 함수는 단순히 숫자면 TRUE, 숫자가 아니면 FALSE를 표시하는 함수로, 1을 곱하여 ‘TRUE’나 ‘FALSE’로 표시된 값을 1이나 0으로 변경하
    기 위해서입니다. 일반적으로 TRUE는 1, FALSE는 0으로 취급하므로 TRUE*1=1, FALSE*1=0으로 표시됩니다.
    ISNUMBER(FIND("우수",L5:L24))의 결과값은 TRUE나 FALSE로 표시됩니다. 그러므로 곱하기 1을 해주어 TRUE나 FALSE를 1이나 0으로 변경해 주어야 합
    니다.

    ISNUMBER(FIND("우리",$A$4:$A$23))+ISNUMBER(FIND("해피",$A$4:$A$23))의 경우
    ISNUMBER(FIND("우리",$A$4:$A$23))의 결과는 TREU나 FALSE로,
    ISNUMBER(FIND("해피",$A$4:$A$23))의 결과도 TRUE나 FALSE로 반환됩니다.
    이를 더해주게(+)게 되면 결과는 1이나 0, 즉 TRUE+TRUE=1, TRUE+FALSE=0, FALSE+FALSE=0으로 값이 반환됩니다.
    그러므로 1을 곱해줘도 곱해주지 않아도 됩니다.

    이해하기가 어렵다면 ISNUMBER가 한번 사용된다면 *1을, 두번 사용된다면 *1을 사용하지 않는다고 생각하시면 됩니다.
    행복한 하루되세요.^^
    "
· 5MB 이하의 zip, 문서, 이미지 파일만 가능합니다.
· 폭언, 욕설, 비방 등은 관리자에 의해 경고없이 삭제됩니다.