XLOOKUP SUMPRODUCT 조합으로 복잡한 조건 합계 한 번에 끝내기

XLOOKUP SUMPRODUCT 조합으로 복잡한 조건 합계 한 번에 끝내기

엑셀로 매출 분석을 하다 보면 가격표는 따로, 판매내역은 따로, 조건은 여러 개라서 수식이 꼬이기 쉽습니다. 이럴 때 XLOOKUP SUMPRODUCT 조합을 쓰면, 단가 조회와 조건부 합계를 한 번에 처리하면서도 수식을 깔끔하게 유지할 수 있습니다. 이 글에서는 초보자도 따라할 수 있도록, 기본 개념에서 실무 예제, 오류 해결까지 단계별로 정리해 보겠습니다.

Quick Fix: XLOOKUP SUMPRODUCT 조합, 이 수식 하나로 바로 해결

예제 시나리오

시트1: 가격표

제품코드(A)단가(B)
A00110000
A0028000
A00312000

시트2: 판매내역

일자(A)제품코드(B)수량(C)지역(D)
2025-01-01A0015서울
2025-01-01A0022부산
2025-01-02A0013서울
2025-01-02A0031대구

목표: 서울 지역에서 판매한 전체 매출 합계를 한 번에 구하는 것(가격은 가격표 시트, 수량은 판매내역 시트에 존재).

바로 쓸 수 있는 수식

=SUMPRODUCT(
    (판매내역!$D$2:$D$100="서울")*
    (판매내역!$C$2:$C$100)*
    XLOOKUP(
        판매내역!$B$2:$B$100,
        가격표!$A$2:$A$100,
        가격표!$B$2:$B$100
    )
)

이 수식 하나로 “서울 조건 필터링 + 제품별 단가 조회 + 수량×단가 매출 계산 + 전체 합계”가 동시에 처리됩니다.

XLOOKUP와 SUMPRODUCT 기본 개념 정리

XLOOKUP 핵심 옵션과 배열 반환

XLOOKUP 기본 형식은 다음과 같습니다.

=XLOOKUP(lookup_value, lookup_array, return_array, [if_not_found], [match_mode], [search_mode])
  • lookup_value : 찾을 값 또는 범위
  • lookup_array : 찾을 범위
  • return_array : 결과를 돌려줄 범위
  • [if_not_found] : 값을 찾지 못했을 때 반환할 값
  • [match_mode] : 정확히 일치, 근사값, 와일드카드 등
  • [search_mode] : 검색 방향(위에서 아래, 아래에서 위 등)

lookup_value에 단일 값 대신 B2:B100 같은 범위를 넣으면 XLOOKUP은 각 값에 대해 단가를 배열로 한 번에 반환합니다. 이 배열을 그대로 SUMPRODUCT에 넘길 수 있습니다.

SUMPRODUCT의 원리와 조건부 합계/개수

SUMPRODUCT 기본 형식은 다음과 같습니다.

=SUMPRODUCT(array1, [array2], [array3], ...)

각 배열의 같은 위치끼리 곱한 뒤, 그 결과를 모두 더한 값을 반환합니다. TRUE/FALSE를 포함한 논리 배열을 곱하면 TRUE는 1, FALSE는 0으로 처리되므로 조건 필터링에 활용할 수 있습니다.

실무 예제 1: 가격표와 판매내역을 한 번에 곱해서 매출 계산

샘플 데이터 구조

가격표 시트와 판매내역 시트는 다음과 같이 구성합니다.

  • 가격표: A열 제품코드, B열 단가
  • 판매내역: A열 일자, B열 제품코드, C열 수량, D열 지역

XLOOKUP을 SUMPRODUCT 안에서 호출하는 패턴

전체 매출 합계를 구하는 수식은 다음과 같습니다.

=SUMPRODUCT(
    판매내역!$C$2:$C$100,
    XLOOKUP(
        판매내역!$B$2:$B$100,
        가격표!$A$2:$A$100,
        가격표!$B$2:$B$100
    )
)

서울 지역 매출만 합계하려면 조건 배열을 곱해 줍니다.

=SUMPRODUCT(
    (판매내역!$D$2:$D$100="서울")*
    판매내역!$C$2:$C$100,
    XLOOKUP(
        판매내역!$B$2:$B$100,
        가격표!$A$2:$A$100,
        가격표!$B$2:$B$100
    )
)

SUMIFS·VLOOKUP/INDEX-MATCH와 비교

SUMIFS는 단순 조건부 합계에는 좋지만, “수량×단가”처럼 행마다 계산한 값을 합산하려면 매출 열을 따로 만들어야 하는 경우가 많습니다. XLOOKUP SUMPRODUCT 조합을 쓰면 가격표가 다른 시트에 있어도 한 줄 수식으로 해결할 수 있고, 조건을 추가해도 구조가 크게 바뀌지 않습니다.

실무 예제 2: 여러 조건(제품+지역+기간)으로 필터링한 매출 합계

조건 셀 준비

판매내역 시트 상단에 조건 입력 영역을 만듭니다.

  • G3: 제품코드 (예: A001)
  • H3: 지역 (예: 서울)
  • I3: 시작일자 (예: 2025-01-01)
  • J3: 종료일자 (예: 2025-01-31)

다중 조건 배열 수식

=SUMPRODUCT(
    (판매내역!$B$2:$B$100=$G$3)*
    (판매내역!$D$2:$D$100=$H$3)*
    (판매내역!$A$2:$A$100>=$I$3)*
    (판매내역!$A$2:$A$100<=$J$3)*
    판매내역!$C$2:$C$100,
    XLOOKUP(
        판매내역!$B$2:$B$100,
        가격표!$A$2:$A$100,
        가격표!$B$2:$B$100
    )
)

네 가지 조건을 모두 만족하는 행만 1이 되고, 그 행의 수량과 단가를 곱해 매출을 합산합니다.

OR 조건/복수 선택 확장

지역을 “서울 또는 부산”으로 합치고 싶다면 지역 조건만 다음처럼 바꿉니다.

((판매내역!$D$2:$D$100="서울")+
 (판매내역!$D$2:$D$100="부산"))

배열 덧셈은 OR, 배열 곱셈은 AND 역할을 한다고 이해하면 편합니다.

대체 방법과 한계, 성능까지 생각한 설계

FILTER, SUMIFS, 피벗테이블과의 역할 분담

  • 단순 조건부 합계: SUMIFS가 빠르고 직관적
  • 행마다 계산한 값을 합산: XLOOKUP SUMPRODUCT 조합이 열 추가 없이 유리
  • 데이터 집계·시각화: 피벗테이블 또는 Power Pivot 권장

LET, LAMBDA와 함께 쓰는 구조

복잡한 수식은 LET 함수로 정리하면 가독성이 좋아집니다.

=LET(
    제품, 판매내역!$B$2:$B$100,
    수량, 판매내역!$C$2:$C$100,
    지역, 판매내역!$D$2:$D$100,
    단가, XLOOKUP(제품, 가격표!$A$2:$A$100, 가격표!$B$2:$B$100),
    조건, (지역="서울"),
    SUMPRODUCT(조건*수량*단가)
)

Troubleshooting: 자주 나오는 오류와 체크리스트

증상대표 원인해결 방법
#N/A 오류 XLOOKUP에서 찾는 값이 가격표에 없음 가격표 범위와 오타, 공백 확인, [if_not_found] 인수 또는 IFERROR 사용
#VALUE! 오류 SUMPRODUCT에 들어가는 배열 길이가 서로 다름 모든 배열의 행·열 개수 일치 여부 확인
결과가 0 또는 너무 작음 조건 배열이 잘못되어 대부분 0이 됨 AND/OR 논리, 괄호 위치 재점검
결과가 너무 큼 조건이 빠져 있거나 중복 곱셈 발생 불필요한 배열 곱셈 제거, 조건 범위 재확인
계산이 느려짐 수많은 행에 복잡한 XLOOKUP SUMPRODUCT 조합 사용 범위 축소, LET로 중복 계산 제거, 필요 시 Power Query/피벗테이블 사용

마무리: XLOOKUP SUMPRODUCT 조합 잘 쓰는 체크리스트

  • XLOOKUP SUMPRODUCT 조합으로 단가 조회와 조건부 합계를 한 줄 수식으로 처리한다.
  • 조건은 (조건1)*(조건2)처럼 배열 곱셈으로 구현한다.
  • OR 조건은 (조건A)+(조건B)처럼 배열 덧셈으로 구현한다.
  • SUMPRODUCT 인수로 들어가는 배열들은 항상 같은 크기인지 확인한다.
  • XLOOKUP의 [if_not_found] 인수를 적절히 사용해 #N/A 오류를 미리 방지한다.
  • 수식이 길어지면 LET 함수로 범위에 이름을 붙여 가독성을 유지한다.

이 체크리스트만 기억하면, XLOOKUP SUMPRODUCT 조합으로 가격표·판매내역·복잡한 조건이 섞인 대부분의 실무 계산을 안정적으로 처리할 수 있습니다.

VLOOKUP에서 XLOOKUP으로 전환하는 방법이 궁금하다면 VLOOKUP 대신 XLOOKUP으로 바꾸는 방법 글을 참고해 보세요.

Leave a Reply

Your email address will not be published. Required fields are marked *