엑셀 INDEX 함수 이해하기

엑셀의 기능에는 서로 중복되거나 대체할 수 있는 기능들이 많이 있습니다. 그 중에 index 함수는 vlookup함수의 일부분(참조하는 기능)을 대체할 수 있습니다. 앞에서 배운 match함수의 매칭되는 값 찾기 기능과 합치면 vlookup함수의 기능을 대체하고 더 나아가 다양한 응용도 할 수 있습니다. 


그만큼 엑셀 index 함수는 중요한 함수 중에 하나입니다.


2015/07/09 - [엑셀] - 엑셀 vlookup 함수 사용방법과 수우미양가


2017/04/18 - [엑셀] - 엑셀 MATCH 함수 이해하기


index 함수와 더불어 위 두 함수도 같이 이해해 두는 것이 좋습니다.


index 함수


index 함수의 기본 컨셉은 이렇습니다. 참조할 표에서 x행과 y열의 값을 알아냅니다. 아직 무슨 말인지 이해안되면 다음을 보세요.

INDEX(참조할 표, x, y)

한번 간단한 예를들어 보겠습니다.

위 그림에서 참조할 표는 2x2행렬이라고 생각할 수 있습니다. x는 2, y도 2 이므로 2행 2열의 위치를 참조하게 되어 4라는 값을 반환하게 됩니다. 어렵지 않게 이해하실 수 있을 겁니다. 엑셀 index 함수는 중요하지만 이해하기는 쉬운 함수입니다.


한가지 예를 더 들어보겠습니다. 이번에는 하나의 열로만 이루어진 테이블을 참조하는 경우입니다.

앞선 예와 달리 열이 하나만 있으므로 이런 경우에는 참조할 행이 몇 행인지만 알면 되므로 굳이 열에 대한 정보를 줄 필요는 없습니다. 그래서 세 번째 인자를 생략하고 두 개의 인자만 전달하면 됩니다.


그렇다면 만약 하나의 행으로 이루어진 테이블을 참조하려면 어떻게 될까요?

음 이런 경우는 두 번째 인자를 생략할 방법이 없으므로 1을 집어 넣어야 할 겁니다. INDEX(참조테이블,1, 열) 이렇게 말이죠.

그래서 한번 실험을 해봤습니다. 두 번째 인자에 그냥 열 값을 집어 넣어보았습니다.

위 그림을 보면 두 번째 인자가 열 번호로 인식됩니다.  

또는 다음과 같이 사용할 수도 있습니다.

INDEX(B2:F2,,4)

그냥 행 번호를 공백으로 나두는 거죠. 

어찌되었건 보통은 이렇게 하나의 행을 가진 테이블을 참조로 사용하지 않고 앞서 예와 같이 하나의 열로 만들어 참조합니다. 위 예는 그냥 알아두세요.


네 번째 인자


혼동을 줄 듯 하여 네 번째 인자를 따로 설명하려 앞에서 설명을 하지 않았습니다. 앞서 내용을 다 이해했다면 이 부분 역시 쉽게 이해할 수 있으므로 걱정할 필요는 없습니다.

엑셀 INDEX 함수의 기본 형태는 다음과 같은 두가지 입니다.

INDEX(array, row_num, column_num)

INDEX(reference, row_num, column_num, area_num)


첫 번째 녀석은 앞에서 다루었습니다. 두 번째 녀석은 첫 번째 녀석의 변형입니다. 

reference

reference는 여러 개의 array입니다. 즉 여러 개의 참조할 테이블(셀 범위) 겠죠. 또는 배열도 가능합니다. 배열이 뭔지 모르시다면 우선 여기서는 셀 범위라고만 이해하고 넘어가셔도 무방합니다.

여러 셀 범위를 괄호로 묶어주면 됩니다. 물론 구분은 ,(콤마)로 해주면 되죠. (array1, arrary2, array3)  이런 식으로요

area_num

area_num은 reference에 나열된 셀 범위를 선택하기 위한 숫자입니다. 예를들어 reference가 (array1, arrary2, array3) 일 때 area_num가 1이면 array1을 선택한 겁니다. 3이면 array3을 선택한 거구요. 


두, 세 번째 인자는 앞서와 동일한 의미입니다.


간단한 예를 살펴보겠습니다.

reference는 두 개의 표(셀 범위)를 갖습니다. 파란 범위와, 빨간 범위입니다.


1행 2열을 참조하는데 네 번째 인자(area_num)가 2입니다. 그러면 reference에 있는 두 개의 셀 범위 중에 두 번째 표에서 1행 2열을 찾으면 됩니다. 따라서 결과는 "라"가 되겠죠. 


이 식에서 네 번째 인자를 1로 바꾸면 결과가 4로 바뀌게 됩니다.


지금까지 엑셀 index 함수를 살펴봤는데 index 함수는 보통 match 함수와 같이 사용되어 응용되어 사용됩니다. 이 부분은 엑셀 다음 포스팅에 다루겠습니다.

이 댓글을 비밀 댓글로
    • 엑셀의맛
    • 2017.07.11 21:16
    참으로 알차고 유익한 포스팅으로 가득합니다
    많은 도움이 됩니다.
    앞으로도 엑셀 관련 작성자분의 깊은 내공 기대합니다
    • 로그라모스
    • 2017.07.29 11:21
    감사합니다, 엑셀 공부하면서 많이 참고하고 있습니다.
    많은 도움 됩니다
    • 음유방랑시인
    • 2018.06.11 14:05
    엑셀 함수 헷갈릴 때 포스팅 하신것들 보는데 많은 도움이 됩니다!
    • 콘파냐바라기
    • 2018.10.04 17:07
    안녕하세요 콘파냐님
    덕분에 엑셀에 대해 기초부터 정확히 이해하면 배우고 있습니다.

    포스팅 마지막에 언급하신 Index와 Match조합관련 포스팅은 언제쯤 볼 수 있을까요?
    너무 궁금합니다 ㅠㅠ

    항상 감사합니다.