첨부파일-4.월별 판매수량 합계 에서
=sum(if(($b$3:$b$27=$a31) * (month($f$3:$f$27)=b$30......
여기서
조건1이 ($b$3:$b$27=$a31)
이거고
조건 2가
(month($f$3:$f$27)=b$30)
이건데
왜 조건2에서는 괄호가
(month($f$3:$f$27=b$30)) 이게 아니고
(month($f$3:$f$27)=b$30) 왜 이게 정답이 되는건가요?
이거때문에 배열수식에 갑자기 혼란이 오네요..T.T
논리적으로 (month($f$3:$f$27=b$30))과 (month($f$3:$f$27)=b$30) 은 서로 다른 수식입니다.
(month($f$3:$f$27=b$30)) 은 $f$3:$f$27 범위의 셀값 각각과 b$30이 같으면, true, 다르면, false를 반환하게 되고 그러한 논리값들을 month 함수가 받게 되죠.. MONTH함수는 인자로 논리값을 받게 되므로, 제대로 된 역할을 기대하기 어렵게 되죠.
(month($f$3:$f$27)=b$30) 은 $f$3:$f$27 범위에서 월만을 추출하여 반환합니다. 이 추출한 '월'들 각각을
b$30과 비교하게 되는 것이죠.
이 수식으로 보아 $f$3:$f$27범위에는 현재 날짜값들이 입력되어 있을것이고, b$30에는 기준 비교값인 숫자형태의 값이 입력되어 있겠군요..
수식의 괄호는 연산의 우선순위를 결정하는 것입니다. 따라서 가장 안쪽 괄호부터 계산이 되는거지요. 괄호만 잘 보시면 이해하실 수 있으실겁니다.
-
*2011-08-09 19:49:39
논리적으로 (month($f$3:$f$27=b$30))과 (month($f$3:$f$27)=b$30) 은 서로 다른 수식입니다.
(month($f$3:$f$27=b$30)) 은 $f$3:$f$27 범위의 셀값 각각과 b$30이 같으면, true, 다르면, false를 반환하게 되고 그러한 논리값들을 month 함수가 받게 되죠.. MONTH함수는 인자로 논리값을 받게 되므로, 제대로 된 역할을 기대하기 어렵게 되죠.
(month($f$3:$f$27)=b$30) 은 $f$3:$f$27 범위에서 월만을 추출하여 반환합니다. 이 추출한 '월'들 각각을
b$30과 비교하게 되는 것이죠.
이 수식으로 보아 $f$3:$f$27범위에는 현재 날짜값들이 입력되어 있을것이고, b$30에는 기준 비교값인 숫자형태의 값이 입력되어 있겠군요..
수식의 괄호는 연산의 우선순위를 결정하는 것입니다. 따라서 가장 안쪽 괄호부터 계산이 되는거지요. 괄호만 잘 보시면 이해하실 수 있으실겁니다.
-
*2011-08-10 10:22:14
(month($f$3:$f$27)=b$30)
month($F$3:$F$27) 에서 괄호를 닫은 것은 month 함수를 적용하기 위한 것입니다.
f3:f27의 범위에서 월을 먼저 구한 후에 =b$30 으로 월에 해당하는 것을 비교하셔야 하는 것이죠.
month에서 나와야 하는 값을 먼저 쓰신 후에 비교를 하셔야 정확하게 비교가 됩니다.
간단하게 말하자면 month 함수의 인수 사용법이라고 할 수 있겠죠.
그리고
(month($f$3:$f$27)=b$30)
month 앞뒤의 괄호는 (조건2) 를 지정 하기 위한 괄호가 되겠습니다.
(조건1)*(조건2) 를 하기 위한 괄호죠
좋은 하루 되세요.
"