본문 바로가기

Excel 365 함수

[ 엑셀 Excel ] FILTER: 데이터에서 원하는 정보만 필터링

FILTER 함수는 일련의 데이터에서 원하는 정보를 필터링해 주는 함수입니다.

FILTER 필요한 인수는  4가지이며 구분은 다음과 같습니다.

 

구문: FILTER( array, include, [if_empty] )

인수 설명
array(필수) 필터링하고자 하는 일련의 데이터 범위
include(필수) 필터링하고자 하는 행 또는 열에 대한 포함 여부(TRUE / FALSE)
if_empty(선택) 필터링 조건에 해당하는 데이터가 없을 경우 반환할 값

 

필터링하고자 하는 아래의 데이터를 이용해서 FILTER 함수의 기본적인 내용을 확인해 보겠습니다. 아래의 데이터를 복사해서 따라 해 보시면 더 좋겠습니다.

Product Sold Qty Prodcut Group Export / Domestic
JP SSP-01 424 A Export
JP SSP-02 391 D Domestic
JP SSP-03 312 B Export
JP SSP-04 199 A Domestic
JP SSP-05 314 C Domestic
JP SSP-06 354 B Export
JP SSP-07 243 A Export
JP SSP-08 126 D Domestic
JP SSP-09 101 C Export
JP SSP-10 475 F Export

 

예제 1 ] 필요한 (  Product / Sold Qty ) 필터링하기

 

위의 첫 번째 예제에서 인수 include의 입력값 { 1, 1, 0, 0 }의 의미를 먼저 이해하셔야 합니다.

Excel에서 숫자 1, 0은 각각 TRUE, FALSE를 의미합니다. 또한 { } 은 배열(일련의 값들)을 의미하며,(콤마)는 열을 의미합니다. 참고로 ;(세미콜론)은 행을 의미합니다.

 

만약 위의 그림과 같이 A1 셀에 ={1,2,3;4,5,6} 이라고 입력하면 A1:C2 범위까지 1부터 6까지의 2행 × 3열의 데이터가 채워(SPILL)지는 것을 확인할 수 있습니다.

따라서 위의 그림처럼 FILTER함수의 두 번째 인수에 B20:E20 이라고 하는 것과 { 1, 1, 0, 0 } 으로 입력하는 것은 같은 결과를 반환해 줍니다.

다시 예제로 돌아와서 FILTER( $B$5:$E$14, {1,1,0,0} )의 의미를 해석해 보면,
$B$5:$E$14의 데이터 범위에서 첫 번째, 두 번째 열은 포함하고 세 번째, 네 번째 열은 제외하겠다는 뜻이 됩니다.
그 결과 아래와 같은 필터링 결과값을 얻을 수 있습니다.

 

예제 2 ] Product Group A 데이터 필터링하기

 

두 번째 인수 include의 입력값 $D$5:$D$14="A"

TRUE ;FALSE;FALSE;TRUE;FALSE;FALSE; TRUE ;FALSE;FALSE;FALSE} 으로 변환되어 FILTER 함수에 전달되고 그 결과 위 그림의 [ 필터링 결과 값 ]과 같이 필터링됩니다.

 

 

예제 3 ] AND 조건 - "Product Group" A이고 "Export / Domestic" 항목이 Export  데이터 필터링하기

 

위의 예제처럼 복수의 AND 조건을 적용해야 하는 경우에는 간단하게 조건과 조건 사이에 곱하기( * ) 만 해 주면 됩니다.

( $D$5:$D$14="A" ) * ( $E$5:$E$14 = "Export" )

 

첫 번째 조건과 두 번째 조건은 아래와 같이 각각 그 결과 값이 계산되고,

 

{TRUE;FALSE;FALSE;TRUE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE}         

       * {TRUE;FALSE;TRUE;FALSE;FALSE;TRUE;TRUE;FALSE;TRUE;TRUE}

 

다시 두 배열의 곱은 {1;0;0;0;0;0;1;0;0;0} 으로 계산되어 FILTER 함수에 최종 반영되어 그림의 필터링 결과값을 반환하게 됩니다.

 

 

예제 4 ] OR 조건 - "Product Group" A이거나 "Export / Domestic" 항목이 Export  데이터 필터링하기

 

AND 조건에 이어 OR 조건인 경우 곱하기( * ) 대산 더하기( + ) 만 해 주시면 됩니다

두 번째 인수 include의 입력 값 ( $D$5:$D$14="A" ) + ( $E$5:$E$14 = "Export" ) {2;0;1;1;0;1;2;0;1;1}으로 계산되고 0 이 아닌 행의 데이터가 필터링 되는 결과를 확인할 수 있습니다.

 

이상으로 FILTER 함수에 대해서 간략히 설명드렸습니다. 도움이 되셨기를 바랍니다.

 

[ 동영상: 예제 1 ]

 

[ 동영상: 예제 2 ]

 

[ 동영상: 예제 3 ]

 

[ 동영상: 예제 4 ]