p.453에 문제 3번에서
[표1]근무팀별로 기본급이 가장 큰 값과 기본급 평균의 차이를 c3:c5영역에 계산하여 표시하요.
a11:k27 영역([표3])을 참조하여 계산
max,if,average, daverage,or 중 알맞은 함수를 사용한 배열 수식 사용
여기서 저는 =MAX(($B$12:$B$27=$A3)*$F$12:$F$27)-AVERAGE(($B$12:$B$27=$A3)*($F$12:$F$27))
이렇게 입력했는데
답은 =MAX(($B$12:$B$27=$A3)*$F$12:$F$27)-AVERAGE(IF($B$12:$B$27=$A3,$F$12:$F$27))
이렇게 되어 있더라구요.
average에서 if를사용하지않고 *표시로 해서 구하면 다른 결과가 나오는데 왜그런거죠?
p463에서 계산문제2 . 2번 문제에서 답이랑 식이랑은 맞게 썻는데 채점하면
이렇게 나오는데 ,가 있고 없고 차이인데 문제에선 딱히 지정하라는말이 없었는데 해야하나요? 어떻게 알고하죠?
프로시저 작성할때
아래 답지에서 a=msgbox(~~~)이거 쓸때
그 앞에 dim a 는 쓰면 안되는건가요?
어떤문제에서는 dim을 사용했는데 여기서는 안써서 뭔지 모르겠어요.
dim이 뭘하는거죠?
1.
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(0,550000,0,0,1650000,0,0...)의 차이겠죠. 같은 이유로 MIN, MEDIAN,SMALL 등의 함수도 반드시 IF문과 함께 사용해야 합니다.
=AVERAGE(550000,1650000,4000000,165000,770000) 와 =AVERAGE(0,550000,0,0,1650000,0,0...) 차이 라고 했는데
첫번째 것은 5650000/5 가 되어 결과가 1130000 되고
두번째 것은 220000/7 이 되어 31428.57143 이 나옵니다.
즉 0 값도 포함하여 나누는 것과 0 값을 포함하지 않고 나누는 것의 차이가 되겠죠.
2. 별다른 지시사항이 없었다면 , 을 지정하지 않아도 됩니다.
3.
dim 은 변수를 선언하는 부분입니다.
변수를 선언하지 않아도 정상 실행 되므로
변수를 선언하지 않아도 정상 실행된다면 정답으로 인정 됩니다.
변수를 선언하고 작성하셔도 상관 없으시구요.
변수 부분은 사용자가 임의로 지정하는 부분이므로
대문자 AA 이든 aa 이든 상관 없구요. a,b, 변수1 등과 같이 사용하셔도 상관 없습니다.
어떻게 작성하시든 정확한 결과가 나오면 정답으로 인정 됩니다.
좋은 하루 되세요.
-
*2018-01-25 22:29:47
1.
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(0,550000,0,0,1650000,0,0...)의 차이겠죠. 같은 이유로 MIN, MEDIAN,SMALL 등의 함수도 반드시 IF문과 함께 사용해야 합니다.=AVERAGE(550000,1650000,4000000,165000,770000) 와 =AVERAGE(0,550000,0,0,1650000,0,0...) 차이 라고 했는데
첫번째 것은 5650000/5 가 되어 결과가 1130000 되고
두번째 것은 220000/7 이 되어 31428.57143 이 나옵니다.
즉 0 값도 포함하여 나누는 것과 0 값을 포함하지 않고 나누는 것의 차이가 되겠죠.
2. 별다른 지시사항이 없었다면 , 을 지정하지 않아도 됩니다.
3.
dim 은 변수를 선언하는 부분입니다.
변수를 선언하지 않아도 정상 실행 되므로
변수를 선언하지 않아도 정상 실행된다면 정답으로 인정 됩니다.
변수를 선언하고 작성하셔도 상관 없으시구요.
변수 부분은 사용자가 임의로 지정하는 부분이므로
대문자 AA 이든 aa 이든 상관 없구요. a,b, 변수1 등과 같이 사용하셔도 상관 없습니다.
어떻게 작성하시든 정확한 결과가 나오면 정답으로 인정 됩니다.
좋은 하루 되세요.