문제 2번의 4번 문제인데요ㅠ.ㅠ
우선, 답은
{=int(average(if(($I$3:$I$23=K16) * (($I$3:$I$23=K16) * ($F$3:$F$23)<>max(($I$3:$I$23=K16) * ($F$3:$F$23))), $F$3:$F$23) ) ) }
인데요,
제가 궁금한 것은...
위에 사용된 배열 수식은
if 함수 이하에 조건이 2개 들어가는 함수인데
( 조건 1, 조건 2)
즉, 조건 1은 빨간색 부분(즉, 각 반별), 조건 2는 파란 괄호 안에 있는 부분, 즉
그 빨간색 조건의 범위에 해당하는
데이터들의 평균값(f3:f23)이 각 반별, 평균의 최대값이 아니어야 한다.
라는 조건인데
왜
파란 괄호로 묶인 조건 2를 지정할 때 또 다시 빨간 부분의 조건을
반복해서 써주는 거죠?ㅠㅠ
조건 2 와 조건 1은 독립적인 거라서 그런건가요?
그리고 max 이하에 쓴 조건도 빨간 부분의 조건이 다시 반복적으로 쓰여지고 있는데
이걸 다 다시 지정해주는 이유가..ㅠㅠ
자꾸 헷갈리네요..ㅠㅠ
논리적인 관계가.. 음
독립적이어서 다시 지정해주는 건지..
조건 1과 2는 별개라서 다 다시금 조건을 써줘야 하는건지?
또 max 함수 이하에도 각 반별이라는 조건을 다 지정해줘야 하는 이유도 그런건지?
ㅠㅠ 논리관계가 길어지니 헷갈리네요ㅠㅠ
알듯말듯 개운치 않고 답답합니다ㅠ.ㅠ
힘이 되는 시나공 ㅠㅠ 빠른 답변 기다리겠습니다ㅠ.ㅠ..
반이 같다는 조건의 범위 내에서 값을 가져오기 위한 것입니다.
즉 조건의 범위와 가져올 값의 범위를 같게 만드는 것이죠.
만약 1,2,3,4,5,6,7,8,9,10 이라는 값이 있을때
조건에 맞는 값이 1,3,4,6,7,10 이라면 이 조건이 맞는 값 내에서 값을 가져와서 사용 하려고 하는 것이죠.
이렇게 하지 않으면 조건에 맞는 값은 1,3,4,6,7,10 인데 가져올 값의 범위는 1,2,3,4,5,6,7,8,9,10 과 같이 되는 것이죠.
이경우 가져올 범위가 달라 다른 값을 반환 할 수도 있습니다.
=INT(AVERAGE(IF(($I$3:$I$23 = K$16) * (($I$3:$I$23 = K$16) * ($F$3:$F$23)<>MAX(($I$3:$I$23=K$16) * ($F$3:$F$23))),$F$3:$F$23)))
조건1 조건2 평균범위
조건1은 반별로 나누는 것이고, 조건2는 반별평균이 반별최고평균인지 확인 하는 부분입니다.
조건2에서 빨간색 부분이 반별평균을 구하고, 파란색 부분에서 반별최고점수가 아닌~을 나타내게 됩니다.
조건1과 조건2가 참이면 평균범위에서 평균을 나타내고 이 평균점을 가지고 average 로 평균을 구합니다.
좋은 하루 되세요.
-
*2012-02-29 04:54:04"
반이 같다는 조건의 범위 내에서 값을 가져오기 위한 것입니다.
즉 조건의 범위와 가져올 값의 범위를 같게 만드는 것이죠.
만약 1,2,3,4,5,6,7,8,9,10 이라는 값이 있을때
조건에 맞는 값이 1,3,4,6,7,10 이라면 이 조건이 맞는 값 내에서 값을 가져와서 사용 하려고 하는 것이죠.
이렇게 하지 않으면 조건에 맞는 값은 1,3,4,6,7,10 인데 가져올 값의 범위는 1,2,3,4,5,6,7,8,9,10 과 같이 되는 것이죠.
이경우 가져올 범위가 달라 다른 값을 반환 할 수도 있습니다.
=INT(AVERAGE(IF(($I$3:$I$23 = K$16) * (($I$3:$I$23 = K$16) * ($F$3:$F$23)<>MAX(($I$3:$I$23=K$16) * ($F$3:$F$23))),$F$3:$F$23)))
조건1 조건2 평균범위조건1은 반별로 나누는 것이고, 조건2는 반별평균이 반별최고평균인지 확인 하는 부분입니다.
조건2에서 빨간색 부분이 반별평균을 구하고, 파란색 부분에서 반별최고점수가 아닌~을 나타내게 됩니다.
조건1과 조건2가 참이면 평균범위에서 평균을 나타내고 이 평균점을 가지고 average 로 평균을 구합니다.
좋은 하루 되세요.