엑셀 / 함수 / SUMPRODUCT / 곱의 합 구하는 함수

SUMPRODUCT는 여러 범위의 같은 위치에 있는 숫자를 곱한 뒤 모두 더하는 함수입니다. 단가와 판매량을 곱한 총매출액처럼 행별 계산의 합을 보조 열 없이 구할 수 있습니다. 한 범위의 모든 값을 서로 곱하는 PRODUCT와 다릅니다.

구문과 범위 조건

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

각 array에는 서로 대응하는 셀 범위를 넣습니다. 예를 들어 B2:B4가 단가, C2:C4가 판매량이면 =SUMPRODUCT(B2:B4,C2:C4)로 계산합니다. 배열의 행·열 크기는 같아야 하며 다르면 #VALUE! 오류가 납니다.

구문과 지원 제품은 Microsoft의 SUMPRODUCT 함수 설명에서 확인할 수 있습니다.

총매출과 이익 계산 예제

단가 1000·2000·3000과 수량 10·20·30을 곱해 더한 예입니다. 계산은 1000×10+2000×20+3000×30이며 총매출은 140000입니다.

단가 1000·2000·3000과 수량 10·20·30을 곱해 더한 예입니다. 계산은 1000×10+2000×20+3000×30이며 총매출은 140000입니다.

=SUMPRODUCT(B2:B4,C2:C4,D2:D4)

여기에 이익률 5%·10%·8%를 추가해 같은 행의 세 값을 곱한 뒤 더한 예입니다. 총 이익은 500+4000+7200인 11700입니다.

여기에 이익률 5%·10%·8%를 추가해 같은 행의 세 값을 곱한 뒤 더한 예입니다. 총 이익은 500+4000+7200인 11700입니다.

숫자가 아닌 배열 항목은 기본적인 SUMPRODUCT 인수에서 0처럼 처리됩니다. 다만 배열 안에서 직접 곱셈이나 나눗셈 표현식을 사용하는 방식은 텍스트·오류 처리 결과가 달라질 수 있으므로 원자료에 문자나 오류가 섞이지 않았는지 확인하세요.

조건별 합계에 활용하기

=SUMPRODUCT((A2:A10="A")*B2:B10*C2:C10)

A열이 A인 행만 단가 B열과 수량 C열을 곱해 더하는 예입니다. TRUE·FALSE 조건을 곱셈에서 1·0으로 사용하여 제외할 행을 0으로 만듭니다. 모든 범위의 시작과 끝 행을 맞춥니다.

단순한 조건별 합계라면 SUMIFS가 읽기 쉬울 수 있습니다. SUMPRODUCT는 전체 열을 무조건 참조하면 많은 셀을 계산하므로 실제 필요한 범위나 표 참조를 사용하는 편이 좋습니다. 필터로 숨긴 행이 자동 제외되는 함수도 아니라는 점을 확인하세요.