작성일자 : 2023-09-25
정의
INDEX 함수는 범위에서 몇 번째에 위치하는 값을 출력하는 함수이다. (또는 상황에 따라 셀 참조를 반환할 수도 있다.)
Syntax
= INDEX ( 배열/범위, 행번호, [열번호], [배열번호] )
(= INDEX ( A1:A10 , 5 ) 는 A1:A10 범위에서 5번째 있는 값을 반환한다.)
인수 | 설명 |
배열/범위 | 값을 출력할 배열이나 범위 (자주 사용하진 않지만, 참조형으로 사용할 경우 여러개의 범위를 지정할 수 있다.) |
행번호 | 출력할 값의 가로방향 순번 (범위가 1줄로 길게 입력된 경우에는 세로방향 순번으로 사용됩니다.) |
열번호 [선택 인수] |
출력할 값의 세로방향 순번 |
배열번호 [선택 인수] |
(여러개 범위를 입력했을 시) 값을 출력할 배열 또는 범위 순번 |
반환값
- 배열형 : 참조 범위에서 지정한 행/열번호에 위치한 셀의 값을 반환
- 참조형 : 지정한 위치의 셀주소(A1, B3, A1:B2, 등)을 반환
활용 사례
= index(배열, randbetween(1:N))
- 가데이터로 대시보드를 만들고자 할때 많은 양의 데이터를 수동으로 모두 적기에는 시간이 많이 필요하다. 정해진 범주의 데이터를 무작위로 많은 양의 데이터를 손쉽게 만들기 위해서 index 와 randbetween 함수를 활용해서 가데이터를 만들었고, 위 데이터를 대시보드 개발에 활용할 수 있었다.
기타
Q. INDEX / MATCH 함수의 사용방법
INDEX/MATCH 함수를 이용하면 VLOOKUP 함수를 효율적으로 대체할 수 있을뿐만 아니라, 다중조건 VLOOKUP, VLOOKUP 다중값 찾기 등 다양한 방법으로 응용할 수 있다.
= INDEX($A1:$D10, 5, 4)
'// A1:D10의 범위에서 5번째 행과 4번째 열에 위치하는 셀의 값을 출력한다.
이제 MATCH 함수를 알아봅니다.
= MATCH("오늘의 커피", $C1:$C10)
'// C1:C10 의 범위에서 "오늘의 커피"가 위치한 번호를 반환한다.
MATCH 함수의 결과값은 INDEX 함수의 행번호로 입력된다. 즉, MATCH 함수에 조건(예: "오늘의 커피")을 입력하면, 해당 조건이 몇번째에 위치하는지 반환하게 되고, 그 값이 INDEX 함수의 행번호로 입력된다.
=INDEX($A1:$D10, MATCH("오늘의 커피", $C1:$C10), 4)
'// MATCH 함수를 통해 C1:C10에서 "오늘의 커피"가 위치하는 번호를 받아온다.
'// 그 값이 INDEX함수의 행번호로 입력되면서, INDEX 함수에서는 "오늘의 커피"가 있는 행의 가격(4번째 열)을 출력하게 된다.
따라서 "오늘의커피" 라는 조건이 바뀌면, INDEX함수에 입력되는 행번호가 같이 변하게 된다. 이 원리는 아주 기초적인 내용이며, 이외에도 다양한 INDEX/MATCH 응용공식을 활용할 수 있다.