안녕하세요 :-)
컴활 1급
엑셀 1권 스프레드시트
교재 p307 문제 4번
=SUM(IF((RIGHT($A$20:$A$39,2)=E10)*IFERROR(FIND("판매",$A$20:$A$39)>=1,FALSE),$H$20:$H$39))
문제 조건이 2가지 입니다.
조건이 2가지이고 and로 연결시켜줄 때는 *를 사용해서 묶어줍니다.
=sum(if( (조건1) * (조건2), 계산범위) c+s+e 를 누르면 배열수식의 값을 구할 수 있는 것으로 공부했습니다.
그런데
(RIGHT($A$20:$A$39,2)=E10) 이게 조건 1인 것 같고
IFERROR(FIND("판매",$A$20:$A$39)>=1,FALSE) 까지는 조건 2인 것 같은데
iferror함수 앞에 왜 ( 괄호를 쓰지 않나요?
넣어서 답 구하려고 하면 오류 메세지가 떠서 답을 구할 수가 없네요.
공식대로 답을 구하려고 한건데 왜 오류가 나는 걸까요?
또 문제에서 1이상이면 이라는 조건이 없는데
문제 식에 >=1을 써주는 이유가 뭐에요?
iferror함수를 사용하기 때문에 문제를 푸는 시험자가 알아서 참일 경우는 >=1이라고 염두해두고 문제를 풀어야 하는 건가요?
안녕하세요.
IFERROR(FIND("판매",$A$20:$A$39)>=1,FALSE) 부분이 조건이 맞습니다.
find 함수는 지정된 범위에서 "판매"가 있는지를 찾아,
있다면 "판매"가 있는 위치를 결과값으로 반환합니다.
find 함수의 결과값이 1 이상이라는 것은 지정된 범위에 "판매"가 있다는 의미이므로
find 함수의 결과를 1 이상인지를 비교하는 것입니다.
FIND("판매",$A$20:$A$39)>=1 가 error라면(문자를 찾지 못하면 오류) FALSE를 반환하는 것입니다.
좋은 하루 보내세요.
-
관리자2019-01-27 23:33:31
안녕하세요.
IFERROR(FIND("판매",$A$20:$A$39)>=1,FALSE) 부분이 조건이 맞습니다.
find 함수는 지정된 범위에서 "판매"가 있는지를 찾아,
있다면 "판매"가 있는 위치를 결과값으로 반환합니다.
find 함수의 결과값이 1 이상이라는 것은 지정된 범위에 "판매"가 있다는 의미이므로
find 함수의 결과를 1 이상인지를 비교하는 것입니다.FIND("판매",$A$20:$A$39)>=1 가 error라면(문자를 찾지 못하면 오류) FALSE를 반환하는 것입니다.
좋은 하루 보내세요.