[엑셀 실무편] XLOOKUP + FILTER

조건별 데이터 자동 추출로 보고서 자동화하기

by 가만히 흐르는중

엑셀로 보고서를 만들다 보면 이런 순간이 꼭 옵니다.


조건에 맞는 데이터만 따로 뽑아야 할 때

필터를 걸고

복사하고

다른 시트에 붙여 넣고


그리고 조건이 바뀌면, 다시 처음부터 같은 작업을 반복합니다. 엑셀을 쓰고 있지만 보고서는 여전히 수작업에 가깝습니다.


이번 5화에서는 XLOOKUP + FILTER 조합으로 조건에 맞는 데이터를 자동으로 추출하는 구조를 다룹니다.


이 조합을 쓰기 시작하면 엑셀은 더 이상 “찾아서 정리하는 도구”가 아니라, 조건만 바꾸면 결과가 바뀌는 자동 보고서가 됩니다.



왜 FILTER가 필요한가?

앞선 화들에서 우리는 이렇게 왔습니다.

1화 : XLOOKUP으로 기준 잡기

2화 : IFERROR로 보고서 안정화

3화 : SUMIFS로 실적 집계

4화 : 코드 해석 (LEFT / MID / RIGHT)


여기까지는 숫자와 값 중심의 자동화였습니다.

하지만 실무에서는 그다음 단계가 필요합니다.

이 조건에 해당하는 행 전체를 보고 싶을때

보고서용 데이터만 따로 뽑고 싶을때


이때 필요한 함수가 바로 FILTER입니다.



실무에서 FILTER가 필요한 진짜 이유

대부분 이런 방식으로 작업합니다.

자동 필터 설정

조건 선택

결과 복사 → 다른 시트에 붙여 넣기

조건 바뀌면 다시 반복


문제는 분명합니다.

사람이 개입됨

실수 발생

자동화 불가


FILTER는 이 과정을 수식 하나로 대체합니다.



실무 시나리오 예시

다음 상황을 가정해 보겠습니다.

✔ 고객 정보 Sheet

Customer ID

Manager


✔ 주문 데이터 Sheet

Order Date

Customer ID

Region

Amount


✔ 보고서 Sheet

특정 담당자

특정 월

해당 조건의 주문 목록 자동 추출




Step 1. FILTER 기본 구조 이해하기

FILTER 함수의 구조는 아주 단순합니다.

조건이 TRUE인 행만 그대로 가져옵니다.


✔ 조건 없이 전체 데이터 확인

=FILTER(Order!A:D, Order!B:B<>"")

데이터가 있는 행만 그대로 가져옵니다.

FILTER가 행 단위 함수라는 걸 확인하는 단계입니다.



✔ 필요한 컬럼만 확인

=FILTER(Order!B:D, Order!B:B<>"")

보고서에 필요한 데이터만 선택

“가져올 범위”를 먼저 통제하는 습관이 중요합니다



Step 2. 단일 조건 데이터 추출

가장 기본적인 형태입니다.

예시 조건 :

Customer ID = C004

=FILTER(Order!A:D, Order!B:B="C004")

FILTER는 조건을 만족하는 행 전체를 자동으로 반환합니다. 이 순간부터 복사 / 붙여 넣기 작업은 필요 없습니다.



Step 3. 다중 조건 FILTER (실무 핵심)

실무에서 조건이 하나일 리 없습니다.

예시 조건 :

Customer ID = C002

Region = North


FILTER에서는 조건을 곱(*)으로 연결합니다.

=FILTER(Order!A:D,(Order!B:B="C002")*(Order!C:C="North"))

image.png

개념적으로는 이렇게 동작합니다.

조건 1 TRUE

조건 2 TRUE
→ 모두 만족하는 행만 반환

조건이 늘어나도 수식 구조는 거의 변하지 않습니다.



Step 4. XLOOKUP + FILTER 조합하기

이제 진짜 실무 조합입니다.

언제 XLOOKUP이 필요할까?

보고서 입력값이 다른 시트에 있을 때

조건 값이 코드일 때

기준 정보를 먼저 해석해야 할 때


예시 조건 :

Manager → Customer ID 연결


✔ XLOOKUP으로 조건용 기준 정리

=XLOOKUP('Customer Master'!B5,'Customer Master'!B:B,'Customer Master'!A:A)

담당자 → Customer ID 변환

조건을 해석하는 단계


✔ 해석된 조건으로 FILTER 적용

=FILTER(Order!A:D,Order!B:B=XLOOKUP('Customer Master'!B5,'Customer Master'!B:B,'Customer Master'!A:A))

image.png

FILTER는 판단하지 않습니다

이미 정리된 조건만 사용합니다




이 조합이 실무에서 강력한 이유

XLOOKUP + FILTER 조합의 핵심은 이것입니다.

✔ 조건만 바꾸면 결과 자동 변경

✔ 행 단위 데이터 그대로 유지

✔ 보고서 시트에 가공 로직 없음

✔ 자동화 구조 완성


즉,

❌ 보고서가 데이터를 골라내는 구조
⭕ 데이터가 조건에 따라 스스로 정렬되는 구조

이 차이가 큽니다.



실무자가 체감하는 Before / After

❌ Before

필터 → 복사 → 붙여 넣기

조건 바뀔 때마다 재작업

누락 / 중복 위험


✔ After

조건 입력만 변경

데이터 자동 추출

보고서 신뢰도 상승


“엑셀을 잘 쓰는 사람”이 아니라
“보고서를 자동화한 사람”처럼 보이게 됩니다.



언제 이 구조를 쓰면 좋은가?

다음 상황이라면 XLOOKUP + FILTER 조합이 거의 정답입니다.

조건별 주문 목록

담당자별 상세 내역

특정 기간 거래 리스트

대시보드용 원본 데이터 추출


특히,

같은 데이터를 여러 보고서에서 쓸 때

조건이 자주 바뀔 때

효과는 확실합니다.



오늘의 핵심 정리

✔ FILTER는 행 단위 데이터 추출 함수

✔ XLOOKUP은 조건을 정리하는 함수

✔ 조회 → 조건 정리 → 추출 순서가 핵심

✔ 이 조합으로 보고서 자동화가 완성된다

수요일 연재
이전 14화[엑셀 실무편] XLOOKUP + MID/RIGHT