컴퓨터활용(컴활) 공부

[스프레드시트] 컴활실기 문제 풀자 (배열 수식)

미스털이 사용자 2023. 12. 31. 11:58
반응형

(문제 출처 : https://m.cafe.daum.net/hermingway/ZYwR/38 )

 

​​​​액셀 컴활 실기문제를 계속해서 풀어보자.

 

 

 

 

===

 

함수+배열수식 문제

 

 

 

FIND는 찾으려는 문자의 위치값을 리턴해준다

만약 문자가 없다면 오류를 리턴

그래서 이를 이용해서 난이도별, 과목별 조건을 만들어서

IF에 *로 나타내준다.

 

IF(

(

FIND(C$35,$C$3:$C$32) → 수강과목 열에 있는 데이터에 대해 난이도 문자열이 있는지 체크

*

FIND($B36,$C$3:$C$32) → 수광과목 열에 있는 데이터에 대해 과목 문자열이 있는지 체크

), 

1, → 위 2조건을 만족한다면 해당 데이터에 대해 1이란 값 리턴 

FALSE

)

 

그 다음 COUNT를 덮어 씌워서 1리턴한 것들의 개수를 리턴

=COUNT(

IF((FIND(C$35,$C$3:$C$32)*FIND($B36,$C$3:$C$32)), 1, FALSE)

)

 

 

 

===

 

INDEX, MATCH 까다로운 함수를 이용한 배열 수식

 

 

 

이건 INDEX와 MATCH의 성질을 잘 파악해서 풀어야할 것 같다.

MATCH는 특정 배열에서 일치하거나 근사치에 해당하는 값의 위치 리턴

INDEX는 해당 배열의 위치값에 해당하는 값을 리턴

(이때 해당 배열의 형태의 열이 1개라면 COLUMN_INDEX 즉 3번째 인자값은 안적어도 된다)

 

모(母)집단 : 원래 대상으로서 여기선 F$3:F$32

표본집단 : 모집단에서 조건을 통해 추려낸 집단 ($C$3:$C$32=$H36)*F$3:F$32

 

 

원래 간단하게 MAX만 써도 답이다.

=MAX(

($C$3:$C$32=$H36)*F$3:F$32

)

 

 

하지만 INDEX와 MATCH를 꼭 써야하므로

=INDEX(

모집단,

위치값

)

=INDEX(

모집단,

MATCH(

MAX값,

표본집단

)

)

 

 

문제의 요구대로 수식을 쓰면 다음과 같다.

=INDEX( → 모집단에서 MATCH의 최대값이 있는 위치장소에 있는 값을 리턴

F$3:F$32, 

MATCH( → 표본집단에서 최대값이 있는 곳의 위치를 리턴

MAX( → 최대값을 리턴

($C$3:$C$32=$H36)*F$3:F$32

), 

($C$3:$C$32=$H36)*F$3:F$32,

0

)

 

 

반응형