엑셀 FILTER 함수 사용법: 조건에 맞는 데이터만 자동으로 추출하기

Excel의 FILTER 함수는 원본 데이터에서 조건에 맞는 행만 다른 위치에 자동으로 추출할 수 있는 함수입니다.

일반 필터처럼 원본 행을 숨기는 방식이 아니라, 수식 결과로 새로운 목록을 만들어주는 것이 핵심입니다.

기본 문법은:

=FILTER(array, include, [if_empty])

입니다.

엑셀 FILTER 함수의 조건별 데이터 추출 방법을 설명하는 인포그래픽
인포그래픽: Mong9 Wonder

1. 가장 기본적인 예제

다음 데이터가 있다고 가정합니다.

상품코드채널재고판매량
SKU-A온라인1220
SKU-B오프라인58
SKU-C온라인715
SKU-D온라인306

온라인 상품만 가져오려면:

=FILTER(A2:D5,B2:B5="온라인","결과 없음")

을 사용할 수 있습니다.

결과는 조건을 만족하는 행만 아래쪽으로 자동 펼쳐집니다.

2. FILTER 함수의 세 인수

array

가져올 전체 범위.

예:

A2:D100

include

어떤 행을 포함할지 결정하는 조건.

예:

B2:B100="온라인"

if_empty

조건에 맞는 결과가 없을 때 표시할 값.

예:

"결과 없음"

세 번째 인수는 선택사항이지만 실무에서는 넣어두는 편이 편리합니다.

3. 재고가 10개 미만인 상품 추출

재고 열이 C열이라면:

=FILTER(A2:D100,C2:C100<10,"대상 없음")

으로 품절 위험 SKU 후보를 빠르게 따로 볼 수 있습니다.

원본 데이터가 바뀌면 결과도 조건에 맞춰 다시 계산됩니다.

4. 두 조건을 모두 만족하는 경우

예:

  • 채널 = 온라인
  • 재고 < 10

두 조건을 모두 만족하려면 곱하기 *를 사용할 수 있습니다.

=FILTER(A2:D100,(B2:B100="온라인")*(C2:C100<10),"대상 없음")

Microsoft도 FILTER에서 AND 조건을 만들 때 이런 방식을 예제로 안내합니다.

5. 둘 중 하나만 만족해도 되는 경우

OR 조건은 더하기 +를 활용할 수 있습니다.

예:

  • 채널이 온라인이거나
  • 재고가 10개 미만

=FILTER(A2:D100,(B2:B100="온라인")+(C2:C100<10),"대상 없음")

6. 왜 #CALC! 오류가 나나?

조건에 맞는 행이 하나도 없고 [if_empty]를 생략하면 빈 배열 때문에 #CALC! 오류가 나타날 수 있습니다.

따라서:

"결과 없음"

같은 세 번째 인수를 넣는 방법이 좋습니다.

7. 결과가 여러 셀로 자동 펼쳐지는 이유

FILTER는 동적 배열 함수입니다.

수식은 첫 번째 셀에 하나만 입력하지만 결과가 필요한 만큼 주변 셀로 자동으로 펼쳐집니다.

이를 Spill이라고 부릅니다.

결과가 펼쳐질 영역에 다른 값이 있으면 정상적으로 확장되지 않을 수 있습니다.

8. 일반 필터와 FILTER 함수 차이

구분일반 필터FILTER 함수
원본 데이터조건 밖 행 숨김그대로 유지
결과같은 표에서 표시다른 영역에 새 목록 생성
자동 분석표제한적수식과 연결하기 쉬움
사용 방식메뉴수식

둘 중 하나가 무조건 더 좋은 것은 아닙니다.

목적이 다릅니다.

9. SORT와 함께 사용

온라인 상품을 추출한 뒤 판매량 기준으로 정렬하려면 FILTER와 SORT를 함께 사용할 수 있습니다.

예:

=SORT(FILTER(A2:D100,B2:B100="온라인",""),4,-1)

여기서 4는 결과 범위의 네 번째 열을 의미하고 -1은 내림차순입니다.

10. Excel 표와 함께 쓰기

원본 데이터를 Excel 표로 만들고 구조적 참조를 사용하면 행이 추가될 때 범위 관리가 편해집니다.

대량 데이터에서 수식을 관리할 때 특히 유용합니다.

11. 다른 통합문서 참조 시 주의

Microsoft는 동적 배열의 통합문서 간 연결을 제한적으로 지원한다고 안내합니다.

원본 통합문서가 닫힌 상태에서는 연결된 FILTER 결과가 새로 고침될 때 #REF! 오류가 발생할 수 있습니다.

파일을 나눠 관리한다면 이 부분을 확인해야 합니다.

12. 실무 활용 예

판매 데이터

특정 채널 주문만 자동 추출

재고 데이터

재고 10개 미만 SKU 목록

입고 데이터

특정 월 입고 예정 품목

SCM

특정 등급 + 특정 창고 조건을 동시에 만족하는 SKU

13. 처음 사용할 때 추천 순서

  1. 원본 범위 확인
  2. 가장 단순한 조건 하나 작성
  3. FILTER 적용
  4. 결과가 펼쳐질 공간 확보
  5. 결과 없음 문구 추가
  6. 필요하면 AND/OR 조건 추가
  7. SORT 등 다른 함수와 결합

14. FAQ

FILTER와 데이터 메뉴의 필터는 같은 기능인가요?

아닙니다.

메뉴 필터는 원본에서 행을 숨기고, FILTER 함수는 별도 결과 배열을 만듭니다.

조건을 두 개 쓸 수 있나요?

네.

AND와 OR 조건을 조합할 수 있습니다.

결과가 없으면 왜 오류가 나나요?

빈 배열을 그대로 반환할 수 없기 때문입니다.

[if_empty] 인수를 사용하면 편리합니다.

Microsoft 365에서 사용할 수 있나요?

네.

Microsoft는 FILTER를 Microsoft 365, Excel 2024, Excel 2021 등에서 지원한다고 안내합니다.

처음에는 =FILTER(범위, 조건, "결과 없음") 세 부분만 이해하면 충분합니다.

Comments

답글 남기기

멍구의 슬기로운 백과사전에서 더 알아보기

지금 구독하여 계속 읽고 전체 아카이브에 액세스하세요.

계속 읽기