책 내용 질문하기
기본모의고사 1편 및 고급필터관련질문
도서
[2011] 컴퓨터활용능력 1급 실기(엑셀, 액세스 2003 사용자용)
페이지
278
조회수
104
작성일
2011-05-09
작성자
첨부파일

안녕하세요~

고급필터부분관련 문의부터 드리면

교재 75페이지에서 언급하기로는

고급필터사용시 가상의 필드를 만들어서 비교하기 위해서

필드이름을 다르게 만들어서 필터를 적용한다고했는데

기본모의고사 1회에서 기본작업 문제3번에서는

필드명을 실기시험과 필기시험이라는 필드명을 그대로 적용했는데

어느부분을 따라야하는건지를 모르겠네요 ㅠㅠ

어떤때는 그냥사용하고 어떤때는 다르게 사용하는건지 모르겠어요

그리고 질문하나더!

계산작업문제에서 2번문제는 이상한 부분이

=TRUNC(AVERAGE(IF( $A$20:$A$39=A10, $H$20:$H$39, ) ) )

이렇게 식을 동일하게 입력하고 배열수식으로 입력했는데

제가 출력되는 값은200,000으로 출력되는데 문제에서 요구하는 값과 다르게 나오네요

어느부분이 잘못된건지?

그리고 계산작업에서 문제 1번의 경우

조건을 입력할때 저같은 경우는

조건입력부분에

조건1 조건2

=a20=판매1팀 =g20>=10

이런식으로 입력해서 문제를 풀었는데 맞게나오더라구요

그래서 앞부분을 찾아보니 앞부분에선 이런식으로 풀었는데

또 정작 교재풀이부분은 이렇게 안풀고 다르게 풀었더라구요 -_-;;;

어느부분에 맞춰야하는지 갈팡질팡 ㅠㅠ

그래서 문의드립니다!

답변
2011-05-11 09:51:28

1. 고급필터의 조건 사용하실때 기본적으로는 필드명을 동일하게 사용합니다.

그런데 조건에 식을 이용하여 작성하여 true 나 false 값이 나오면 가상의 필드를 만들기 위해 필드명을 다른 것을 사용하는 것입니다.

기본적으로 필기시험 점수가 80점 이상 인 조건을 만들면

필기시험

>=80

을 하여 필기시험 필드에 있는 값들과 >=80을 비교하여 80이상인 값만 필터해 올수 있습니다.

그런데 식을 이용하여 만약 필기시험점수가 평균이상인 것만 찾아와야 한다면

조건

=a1>=average(a1:a10)

(a1을 필기시험 점수 셀이라고 생각 하겠습니다.)

과 같이 작성해야 하고 이렇게 작성하게 되면 true 나 false 값이 나오게 되죠.

그런데 그냥

필기시험

=a1>=average(a1:a10)

으로 작성하시면 필기시험에 있는 점수들은 숫자(89,80,28,39..) 인데 true 와 비교해서 같은 결과가 나올 수 있을까요?

그렇기 때문에 가상의 필드를 만들어 true 와 false 값을 넣고 그중 true 값만을 필터하게 되는 것입니다.

2.

=TRUNC(AVERAGE(IF( $A$20:$A$39=A10, $H$20:$H$39, ) ) )

=TRUNC(AVERAGE(IF($A$20:$A$39=A10, $H$20:$H$39) ) )

왜 , 를 붙이셨나요?

if문에서 조건이 참일때만 계산되게 하셔야 정확한 결과가 나옵니다.

조건이 거짓일때 공백을 입력 하게 되면

당연히 나눌 값이 많아 지기 때문에 값이 적게 나오게 되는 것이죠.

만약 조건에 맞는값이 average(80,80,80,80) 이라면 이값을 모두 더해 4로 나눠서 80이라는 평균이 나오게 되지만

조건에 맞지 않는 것의 공백까지 포함 하게 되면 average(80,,80,80,80,,80,,) 을 하게 되면 모든값을 더하고 8로 나누면 40이 나오게 됩니다.

그래서 마지막 , 를 없애 주시면 정확한 결과가 나오게 되죠.

3. 결과가 같다면 상관 없습니다.

주어진 조건 범위내에서 조건을 제대로 작성하여 정확한 값이 나오면 됩니다.

좋은 하루 되세요.

"
  • *
    2011-05-11 09:51:28

    1. 고급필터의 조건 사용하실때 기본적으로는 필드명을 동일하게 사용합니다.

    그런데 조건에 식을 이용하여 작성하여 true 나 false 값이 나오면 가상의 필드를 만들기 위해 필드명을 다른 것을 사용하는 것입니다.

    기본적으로 필기시험 점수가 80점 이상 인 조건을 만들면

    필기시험

    >=80

    을 하여 필기시험 필드에 있는 값들과 >=80을 비교하여 80이상인 값만 필터해 올수 있습니다.

    그런데 식을 이용하여 만약 필기시험점수가 평균이상인 것만 찾아와야 한다면

    조건

    =a1>=average(a1:a10)

    (a1을 필기시험 점수 셀이라고 생각 하겠습니다.)

    과 같이 작성해야 하고 이렇게 작성하게 되면 true 나 false 값이 나오게 되죠.

    그런데 그냥

    필기시험

    =a1>=average(a1:a10)

    으로 작성하시면 필기시험에 있는 점수들은 숫자(89,80,28,39..) 인데 true 와 비교해서 같은 결과가 나올 수 있을까요?

    그렇기 때문에 가상의 필드를 만들어 true 와 false 값을 넣고 그중 true 값만을 필터하게 되는 것입니다.

    2.

    =TRUNC(AVERAGE(IF( $A$20:$A$39=A10, $H$20:$H$39, ) ) )

    =TRUNC(AVERAGE(IF($A$20:$A$39=A10, $H$20:$H$39) ) )

    왜 , 를 붙이셨나요?

    if문에서 조건이 참일때만 계산되게 하셔야 정확한 결과가 나옵니다.

    조건이 거짓일때 공백을 입력 하게 되면

    당연히 나눌 값이 많아 지기 때문에 값이 적게 나오게 되는 것이죠.

    만약 조건에 맞는값이 average(80,80,80,80) 이라면 이값을 모두 더해 4로 나눠서 80이라는 평균이 나오게 되지만

    조건에 맞지 않는 것의 공백까지 포함 하게 되면 average(80,,80,80,80,,80,,) 을 하게 되면 모든값을 더하고 8로 나누면 40이 나오게 됩니다.

    그래서 마지막 , 를 없애 주시면 정확한 결과가 나오게 되죠.

    3. 결과가 같다면 상관 없습니다.

    주어진 조건 범위내에서 조건을 제대로 작성하여 정확한 값이 나오면 됩니다.

    좋은 하루 되세요.

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