Excel

필터와 필터 함수 (3)

별동산 2024. 7. 19. 08:38
반응형

5. Index 함수

가. 기능 및 구문

Index함수는 행 또는 열 번호로 지정된 데이터를 추출해 줍니다.

구문은 INDEX(array, row_num, [column_num])입니다.

 

나. 사용법

(1) 1개 또는 특정 셀 선택하기

범위에서 셀 한개만을 선택하려면 해당하는 셀에 해당하는 행 과 열 번호를 입력하면 됩니다.

여기서 행 번호와 열 번호는 시트 전체가 아니라 범위를 기준으로 1부터 시작하니 주의해야 합니다.

 

예를 들어 A3셀에서 C8셀에서 2번째 행, 3번째 열의 값은

=INDEX(A4:C8,2,3)

으로 구하는데,

4행이 index 함수의 행 번호로는 1이고, A열은 A열부터 시작했기때문에 열 번호가 1로 시트 기준이나 같습니다.

따라서, 행 번호 2와 열 번호 3이 교차하는 범위는 C5셀이 되고, C3셀의 값 '배'가 반환됩니다.

 

 

(2) 1개 행 선택하기

A3셀에서 C8셀에서 1행 전체를 선택하려면 원하는 행 번호를 입력력하고, 열 번호는 0으로 하거나 비워두면 됩니다.

 

예를 들어 1행을 선택하려면 

=INDEX(A4:C8,1,0) 또는 =INDEX(A4:C8,1,) 

일자, 구분, 상품이 반환됩니다.

 

 

그러나, 두 번째 ,(쉼표)를 생략하면(또는 입력하지 않으면) #REF! 에러가 발생하니 주의해야 합니다.

 

 

(3) 1개 열 선택하기

1개 열 전체를 선택하려면 행 번호는 입력하지 않고, 원하는 열 번호만 입력하면 됩니다.

 

예를 들어 P6셀에

=INDEX(A4:C8,,2)라고 입력해서 2열을 선택하면 B3셀에서 B8셀까지의 값이 반환됩니다.

 

다. Index함수를 이용해 criteria 변수 변경

=LET(filter_range,A4:C8,criteria,B4:B8="판매",CHOOSECOLS(FILTER(filter_range,criteria),1,3))

중 criteria의 값에서 B4:B8을 index(filter_range,,2)라고 수정할 수 있으므로

criteria를 index(filter_range,,2)="판매"라고 지정할 수도 있고,

=LET(filter_range,A4:C8,criteria,INDEX(filter_range,,2)="판매",CHOOSECOLS(FILTER(filter_range,criteria),1,3))

 

criteria 변수 지정 없이 Filter 함수 내에서 criteria를 filter_range를 이용해 아래와 같이 지정할 수도 있습니다.

=LET(filter_range,A4:C8,CHOOSECOLS(FILTER(filter_range,INDEX(filter_range,,2)="판매"),1,3))

 

필터문제 해답3.xlsx
0.01MB

반응형