INDEX 함수는 테이블이나 범위에서 값 또는 값에 대한 참조를 반환합니다.
INDEX 함수를 사용하는 방법에는 다음 두 가지가 있습니다.
배열형
설명
행과 열 번호 인덱스로 선택한 테이블이나 배열의 요소의 값을 반환합니다.
INDEX 함수의 첫 번째 인수가 배열 상수이면 배열형을 사용합니다.
구문
INDEX(array, row_num, [column_num])
INDEX 함수의 배열형에는 다음과 같은 인수가 있습니다.
-
array 필수 요소입니다. 배열 상수나 셀 범위입니다.
-
배열에 행이나 열이 하나만 있을 때는 row_num이나 column_num 인수를 생략할 수 있습니다.
-
배열에 행과 열이 두 개 이상 있을 때 row_num이나 column_num만 사용하면 INDEX는 배열의 전체 행이나 열을 하나의 배열로 반환합니다.
-
-
row_num column_num이 없는 한 필수입니다. 값을 반환할 배열의 행을 선택합니다. row_num을 생략하면 column_num을 지정해야 합니다.
-
column_num 선택 요소입니다. 값을 반환할 배열의 열을 선택합니다. column_num을 생략하면 row_num을 지정해야 합니다.
주의
-
row_num과 column_num 인수를 모두 사용하면 INDEX는 row_num과 column_num이 교차하는 셀의 값을 반환합니다.
-
row_num 및 column_num은 배열 내의 셀을 가리켜야 합니다. 그렇지 않으면 INDEX가 #REF를 반환합니다! 발생합니다.
-
row_num이나 column_num을 0으로 설정하면 전체 열이나 전체 행에 대한 값의 배열이 각각 반환됩니다. 배열로 반환된 값을 사용하려면 INDEX 함수를 배열 수식으로 입력합니다.
참고: 최신 버전의 Microsoft 365가 있는 경우, 출력 범위의 왼쪽 상단 셀에 수식을 입력한 다음 ENTER 키를 눌러 수식을 동적 배열 수식으로 확인할 수 있습니다. 그렇지 않으면 먼저 출력 범위를 선택하여 수식을 레거시 배열 수식으로 입력하고 출력 범위의 오른쪽 맨 위 셀에 수식을 입력한 다음 CTRL+SHIFT+ENTER를 눌러 확인해야 합니다. Excel에서는 수식의 시작과 끝에 중괄호가 삽입됩니다. 배열 수식에 대한 자세한 내용은 배열 수식 지침 및 예제를 참조하세요.
예제
예제 1
이 예제에서는 INDEX 함수를 사용하여 행과 열이 만나는 교차 셀의 값을 찾습니다.
다음 표의 예제 데이터를 복사하여 새 Excel 워크시트의 A1 셀에 붙여넣습니다. 수식의 결과를 표시하려면 수식을 선택하고 F2 키를 누른 다음 Enter 키를 누릅니다.
데이터 |
데이터 |
|
---|---|---|
사과 |
레몬 |
|
바나나 |
배 |
|
수식 |
설명 |
결과 |
=INDEX(A2:B3,2,2) |
범위에서 두 번째 행과 두 번째 열이 교차하는 위치의 값(A2:B3) |
배 |
=INDEX(A2:B3,2,1) |
범위에서 두 번째 행과 첫 번째 열이 교차하는 위치의 값(A2:B3) |
바나나 |
예제 2
이 예제에서는 배열 수식에 INDEX 함수를 사용하여 2x2 배열에 지정된 두 셀의 값을 찾습니다.
참고: 최신 버전의 Microsoft 365가 있는 경우, 출력 범위의 왼쪽 상단 셀에 수식을 입력한 다음 ENTER 키를 눌러 수식을 동적 배열 수식으로 확인할 수 있습니다. 그렇지 않으면 먼저 두 개의 빈 셀을 선택하여 수식을 레거시 배열 수식으로 입력하고 출력 범위의 왼쪽 상단 셀에 수식을 입력한 다음 CTRL+SHIFT+ENTER를 눌러 확인해야 합니다. Excel에서는 수식의 시작과 끝에 중괄호가 삽입됩니다. 배열 수식에 대한 자세한 내용은 배열 수식 지침 및 예제를 참조하세요.
수식 |
설명 |
결과 |
---|---|---|
=INDEX({1,2;3,4},0,2) |
배열에서 첫 번째 행, 두 번째 열에 있는 값. 배열의 첫 번째 행에는 1과 2, 두 번째 행에는 3과 4가 포함됩니다. |
2 |
배열에서 두 번째 행, 두 번째 열에 있는 값(위와 같은 배열) |
4 |
|
참조형
설명
특정 행과 열이 교차되는 위치의 셀 참조를 반환합니다. 참조가 인접하지 않은 영역으로 이루어진 경우에는 찾아볼 영역을 선택할 수 있습니다.
구문
INDEX(reference, row_num, [column_num], [area_num])
INDEX 함수의 참조형에는 다음과 같은 인수가 있습니다.
-
reference 필수 요소입니다. 하나 이상의 셀 범위를 포함하는 참조 영역입니다.
-
인접하지 않은 범위를 참조로 입력하려면 참조를 괄호로 묶어야 합니다.
-
참조의 각 영역마다 행이나 열이 한 개만 들어 있는 경우에는 row_num 또는 column_num 인수가 각각 선택 사항이 됩니다. 예를 들어 한 개의 행 참조에 대해서는 INDEX(reference,,column_num)을 사용합니다.
-
-
row_num 필수 요소입니다. 참조 범위에서 참조를 반환할 행 번호입니다.
-
column_num 선택 요소입니다. 참조 범위에서 참조를 반환할 열 번호입니다.
-
area_num 선택 요소입니다. row_num과 column_num이 교차하는 셀을 반환할 참조 범위를 선택합니다. 첫 번째로 선택하거나 입력한 영역의 번호는 1이 되고, 두 번째 영역의 번호는 2가 됩니다. area_num을 생략하면 영역 1이 사용됩니다. 여기에 나열되는 영역은 모두 시트 하나에 위치하고 있어야 합니다. 동일한 시트에 위치하지 않은 영역을 지정하면 #VALUE! 오류가 반환됩니다. 다른 시트에 위치하고 있는 영역을 사용해야 한다면 INDEX 함수의 배열 형태를 사용하고, 배열을 구성하는 범위를 계산할 때 다른 함수를 사용하는 것이 좋습니다. 예를 들어 사용할 범위를 계산할 때 CHOOSE 함수를 사용할 수 있습니다.
예를 들어 Reference가 (A1:B4,D1:E4,G1:H4) 셀을 나타내면 area_num 1은 A1:B4 범위를, area_num 2는 D1:E4 범위를, area_num 3은 G1:H4 범위가 됩니다.
주의
-
reference 및 area_num이 특정 범위를 선택한 후 row_num 및 column_num은 특정 셀을 선택합니다. row_num 1은 범위의 첫 번째 행이고 column_num 1은 첫 번째 열이며 다음도 이와 마찬가지입니다. INDEX에 의해 반환된 참조는 row_num과 column_num의 교집합입니다.
-
row_num이나 column_num을 0으로 설정하면 INDEX는 전체 열이나 행에 대한 참조를 각각 반환합니다.
-
row_num, column_num 및 area_num은 참조 내의 셀을 가리켜야 합니다. 그렇지 않으면 INDEX가 #REF!를 반환합니다. 발생합니다. row_num 및 column_num을 생략하면 INDEX는 area_num에 의해 지정된 참조 영역을 반환합니다.
-
INDEX 함수의 결과는 참조이며 다른 수식에 의해 참조로 해석됩니다. INDEX 함수의 반환 값은 수식에 따라 참조로 사용될 수도 있고 값으로 사용될 수도 있습니다. 예를 들어 수식 CELL("width",INDEX(A1:B2,1,2))는 CELL("width",B1)과 동일합니다. CELL 함수는 INDEX의 반환 값을 셀 참조로 사용합니다. 반면에 2*INDEX(A1:B2,1,2)와 같은 수식은 INDEX의 반환 값을 B1 셀의 숫자로 인식합니다.
예제
다음 표의 예제 데이터를 복사하여 새 Excel 워크시트의 A1 셀에 붙여 넣습니다. 수식의 결과를 표시하려면 수식을 선택하고 F2 키를 누른 다음 Enter 키를 누릅니다.
과일 |
가격 |
개수 |
---|---|---|
사과 |
\690 |
40 |
바나나 |
\340 |
38 |
레몬 |
\550 |
15 |
오렌지 |
\250 |
25 |
배 |
\590 |
40 |
아몬드 |
\2,800 |
10 |
캐슈넛 |
\3,550 |
16 |
땅콩 |
\1,250 |
20 |
호두 |
\1,750 |
12 |
수식 |
설명 |
결과 |
=INDEX(A2:C6, 2, 3) |
A2:C6 범위에서 두 번째 행과 세 번째 열이 교차하는 위치, 즉 C3 셀의 내용을 반환합니다. |
38 |
=INDEX((A1:C6, A8:C11), 2, 2, 2) |
A8:C11의 두 번째 영역에서 두 번째 행과 두 번째 열이 교차하는 위치, 즉 B9 셀의 내용을 반환합니다. |
1.25 |
=SUM(INDEX(A1:C11, 0, 3, 1)) |
A1:C11 범위에서 첫 번째 영역의 세 번째 열의 합, 즉 C1:C11의 합을 반환합니다. |
216 |
=SUM(B2:INDEX(A2:C6, 5, 2)) |
B2에서 시작하여 A2:A6 범위의 다섯 번째 행과 두 번째 열이 교차하는 위치 사이의 범위의 합, 즉 B2:B6의 합을 반환합니다. |
2.42 |