기출문제 2회
문제2 계산작업 시트의 5번문제를 보면
=AVERAGE(IF(($D$3:$D$34=A38)*IFERROR(FIND("정보",$A$3:$A$34)>=1,FALSE),$G$3:$G$34))
답이 이렇게 나와있는데요..
IFERROR(FIND("정보",$A$3:$A$34)>=1,FALSE
이부분이 이해가 안가네요.
1. find 함수는 문자열을 찾아주는 함수인데... FIND("정보",$A$3:$A$34)>=1 이렇게 쓰였을 경우에
$A$3:$A$34 범위에 있는 "정보"라는 단어를 찾아라 라고 해석해야 되는게 맞나요?
근데 FIND("정보",$A$3:$A$34)>=1 만 필드에 입력했을떄, 근데 왜 value 값이 나오는건가요?
FIND("정보",$A$3:$A$34)>=1 의 정확한 해석을 알고 싶습니다
2. =AVERAGE(IF(($D$3:$D$34=A38)*(FIND("정보",$A$3:$A$34)>=1),$G$3:$G$34))
가 아니라 답은
=AVERAGE(IF(($D$3:$D$34=A38)*IFERROR(FIND("정보",$A$3:$A$34)>=1,FALSE),$G$3:$G$34))
이것인데. 왜 중간에 IFERROR 함수를 사용하여, false 값을 줘야 하는지 모르겠습니다.
find 함수를 이용하여 "정보"를 찾아 그 위치를 표시하는데,
해당 셀에 "정보"가 있다면 그 시작 위치가 결과값으로 나왔겠죠?
그 위치값으로 가장 작은 값은 "정보"가 첫번째로 나오는 1이므로 1보다 크거나 같다면 "정보"라는 글자가 있는 것이 됩니다.
그러므로 '>=1'을 해준 것입니다. 그런데 만약 "정보"라는 글자가 없을 때는 find 함수는 오류가 발생합니다.
그러므로 iferrorr 함수를 이용하여 오류가 발생하는지 체크를 하는 것입니다.
오류가 발생했다면 이것은 "정보"라는 글자가 없는 것이고, 이것은 조건을 만족하지 않은 것이므로 'false'를 넣는 것입니다.
좋은 하루 되세요.
-
*2015-07-18 11:45:32
find 함수를 이용하여 "정보"를 찾아 그 위치를 표시하는데,
해당 셀에 "정보"가 있다면 그 시작 위치가 결과값으로 나왔겠죠?
그 위치값으로 가장 작은 값은 "정보"가 첫번째로 나오는 1이므로 1보다 크거나 같다면 "정보"라는 글자가 있는 것이 됩니다.
그러므로 '>=1'을 해준 것입니다. 그런데 만약 "정보"라는 글자가 없을 때는 find 함수는 오류가 발생합니다.
그러므로 iferrorr 함수를 이용하여 오류가 발생하는지 체크를 하는 것입니다.
오류가 발생했다면 이것은 "정보"라는 글자가 없는 것이고, 이것은 조건을 만족하지 않은 것이므로 'false'를 넣는 것입니다.
좋은 하루 되세요.