행궁동 데이터 엔지니어

반응형

엑셀의 INDEX, MATCH 함수를 예제와 함께 정리해 봤습니다.

포스팅 하단에 예제 파일 첨부했으니 다운로드하여 사용하시기 바랍니다.

 

INDEX(Array, Row_num, Column_num)  : 참조 영역에서 특정 행/열의 값을 구하는 함수

  • Array : 셀 범위 또는 배열 상수
  • Row_num : 셀 범위나 배열에서 상대적인 행 번호(엑셀 시트에서는 1,2,3 ....)
  • Column_num : 셀 범위나 배열에서 상대적인 열 번호(엑셀 시트에서는 A, B, C .... 숫자로 나타내기에 A=1, B=2)

MATCH(Lookup_value, Lookup_array, Match_type) : 참조 영역에서 찾으려는 값의 상대적인 위치 알아내기

  • Lookup_value : 찾으려는 값
  • Lookup_array : 찾으려는 값이 포함된 참조 영역
  • Match_type : Lookup_value를 찾는 방법으로 -1(보다큼), 0(완전일치), 1(보다작음) 3가지 type 지정 가능

사용 예시

[표3]을 이용해서 [표1]의 가입금액 구하기! INDEX와 MATCH 함수 사용

[표1]의 가입나이, 코드, [표3]을 이용해서 [표1]의 가입금액[E4:E39] 구하기

  • E4 셀에 입력한 최종 수식
  • =INDEX($J$5:$Q$8,MATCH(C4,$I$5:$I$8,0),MATCH(B4,$J$3:$Q$3,1))
  • INDEX와 MATCH 함수 활용
  • MATCH로 구한 상대 위치를 INDEX함수의 인수로 넣어서 값을 구함

문제풀이 방법(3단계)

1. MATCH 함수를 사용해서 가입나이의 상대위치 확인 (상대적인 열-Column 위치)

  • MATCH(Lookup_value, Lookup_array, Match_type)
  • =MATCH(B4, $J$3:$Q$3, 1) -> 3
  • Match_type = 1(보다 작음) 사용 

2. MATCH 함수를 사용해서 코드의 상대위치 확인 (상대적인 행-Row 위치)

  • =MATCH(C4, $I$5:$I$8,0) -> 1

3. INDEX 함수에 [J5:Q8] 영역(가입금액 영역)을 셀 범위로 하고 위에서 구한 상대적인 행/열 위치의 값 반환 

  • INDEX(Array, Row_num, Column_num)
  • =INDEX($J$5:$Q$8, MATCH(C4, $I$5:$I$8,0), MATCH(B4,$J$3:$Q$3,1))
  • INDEX 함수에 들어간 인수 3개를 차례대로 보면 아래와 같습니다
  • $J$5:$Q$8 = 가입금액 영역, 자동 완성 시 상대 참조가 발생하지 않도록 $로 절대 참조
  • MATCH(C4, $I$5:$I$8,0) = Row_num(행 번호) 2번에서 구한 코드의 상대 위치
  • MATCH(B4,$J$3:$Q$3,1) = Column_num(열 번호) 1번에서 구한 가입나이의 상대 위치

 

예제 수식이 MATCH로 구한 값을 INDEX함수의 인수로 넣는 내용이어서 비교적 길기에, 헷갈릴 수 있어 예제 파일에 아래처럼 끊어서 푼 내용도 함께 남깁니다.

 

[표4] 끊어서 확인한 예시

예제파일에 예시, 직접 풀어보기 2개 시트가 있으니 참고하시기 바랍니다.

 

INDEX,MATCH 함수예제.xlsx
0.02MB

 

감사합니다.

 

예제 파일 작성 참고 :
상공회의소 자격평가 사업단, 2018년 컴퓨터활용능력 실기 연습 예제 파일,
http://license.korcham.net/kor/license/refview.jsp?cd=0103&mm=21&no=179858&pg=1
반응형

이 글을 공유합시다

facebook twitter kakaoTalk kakaostory naver band