문제대로 그대로 풀어보았는데
=AVERAGE(IF(IFERROR(FIND("정보",$A$3:$A$34)>=1,FALSE)*($D$3:$D$34=A38),$G$3:$G$34))
이렇게 작성도 가능한가요?
결과가 답변과 똑같이 나와서요
(IFERROR(FIND("정보",$A$3:$A$34)>=1,FALSE) 이부분이 설명봐도 좀 헷갈리는데
>=1 이게 정보포함이 더 크다면 거짓으로 표현하라뜻인가요?
이해하기 쉽게 설명 좀 부탁드려요
안녕하세요.
적어주신 수식대로 작성하셔도
주어진 함수로 결과를 정확히 표시하셨으므로 정답으로 인정됩니다.
find 함수를 이용하여 "정보"를 찾아 그 위치를 표시하는데,
해당 셀에 "정보"가 있다면 그 시작 위치가 결과값으로 나왔겠죠?
그 위치값으로 가장 작은 값은 "정보"가 첫번째로 나오는 1이므로 1보다 크거나 같다면 "정보"라는 글자가 있는 것이 됩니다.
그러므로 '>=1'을 해준 것입니다. 그런데 만약 "정보"라는 글자가 없을 때는 find 함수는 오류가 발생합니다.
그러므로 iferrorr 함수를 이용하여 오류가 발생하는지 체크를 하는 것입니다.
오류가 발생했다면 이것은 "정보"라는 글자가 없는 것이고, 이것은 조건을 만족하지 않은 것이므로 'false'를 넣는 것입니다.
>=1 을 생략해도 정확한 결과가 나온다면 생략하셔도 됩니다.
좋은 하루 보내세요.
-
관리자2019-04-22 20:13:09
안녕하세요.
적어주신 수식대로 작성하셔도
주어진 함수로 결과를 정확히 표시하셨으므로 정답으로 인정됩니다.
find 함수를 이용하여 "정보"를 찾아 그 위치를 표시하는데,
해당 셀에 "정보"가 있다면 그 시작 위치가 결과값으로 나왔겠죠?
그 위치값으로 가장 작은 값은 "정보"가 첫번째로 나오는 1이므로 1보다 크거나 같다면 "정보"라는 글자가 있는 것이 됩니다.
그러므로 '>=1'을 해준 것입니다. 그런데 만약 "정보"라는 글자가 없을 때는 find 함수는 오류가 발생합니다.
그러므로 iferrorr 함수를 이용하여 오류가 발생하는지 체크를 하는 것입니다.
오류가 발생했다면 이것은 "정보"라는 글자가 없는 것이고, 이것은 조건을 만족하지 않은 것이므로 'false'를 넣는 것입니다.
>=1 을 생략해도 정확한 결과가 나온다면 생략하셔도 됩니다.
좋은 하루 보내세요.