티스토리 뷰

오늘은 지난 포스팅 엑셀배우기, COUNT/COUNTA/COUNTBLANK/COUNTIF/COUNTIFS 함수 정리. 에서 예고한대로, SUM 함수 종류를 정리하도록 하겠습니다. COUNT 함수 종류와 SUM 함수 종류는 컴퓨터활용능력시험의 단골 함수일 뿐만 아니라, 엑셀 실무에서도 정말 많이 활용되는 함수입니다. 특히 이 두 함수군은 확실히 정리하고 이해할 필요가 있습니다.

이번 포스팅은 예제를 통해 함수의 활용보다는 함수 자체의 개념 정리를 목적으로 하고 있기 때문에 함수 구조와 기능에만 집중해서 설명해 드리겠습니다. 중간중간 관련 예제에 대한 내용은 참고할 수 있는 포스팅 링크를 따로 걸도록 하겠습니다.

일단 SUMPRODUCT 함수를 먼저 알아보겠습니다. SUMPRODUCT 함수는 두개 이상 범위의 대응되는 값들끼리 곱해서(PRODUCT) 더하는(SUM) 함수입니다. 즉, 아래에서는 SUMPRODUCT 함수로 B열과 C열의 각각 7개 값들끼리 서로 곱하고 이 값들을 모두 더해줄 수 있습니다. SUMPRODUCT 함수의 구조는 '=SUMPRODUCT(범위 1, 범위 2, 범위 3, ...)' 입니다. 따라의 D12 셀의 SUMPRODUCT 함수 수식, '=SUMPRODUCT(B3:B9,C3:C9)'은 1*7, 2*6, 3*5, ... 의 값들을 더한 값인 84를 반환하는 것입니다. 

 SUMPRODUCT 함수 값이 제도로 계산되었는지 확인하기 위해 SUM 함수를 사용해 보도록 하겠습니다. 먼저 B열과 C열의 대응하는 값들을 각각 * 연산자로 곱해서(PRODUCT) D열에 계산합니다. 그리고 이 D열의 값들을 SUM 함수로 더해 봅시다. 

참고로 SUM 함수는 + 연산자 대신에 사용하는 가장 기초중의 기초인 함수로, 아마도 엑셀에서 가장 처음 다루게 되는 함수가 아닐까 생각되는 함수입니다. 함수의 구조는 '=SUM(합계할 범위 또는 합계할 셀들)'이고, 아래의 D11셀에 '=SUM(D3:D9)'의 수식이 들어갑니다. SUMPRODUCT 함수로 바로 B열과 C열의 대응하는 값들끼리 곱해서 더한 값과 * 연산자와 SUM 함수로 마찬가지로 B열과 C열의 대응하는 값들끼리 곱해서 더한 값이 각각 84로 동일합니다.


이어서 SUMIF 함수로 SUMIFS 함수를 확인해 보겠습니다. SUMPRODUCT 함수가 SUM(합)과 PRODUCT(곱)의 기능이라면, SUMIF/S 함수는 SUM(함)과 IF/S(조건)의 기능입니다. 즉, 단일 조건을 만족하는 셀의 합계를 구하는 것이 SUMIF 함수이고, 다중 조건을 만족하는 셀의 합계를 구하는 것이 SUMIFS 함수입니다. COUNTIF/S, AVERAGEIF/S 함수와 맥락과 정확히 동일합니다. 조건이 한개냐 두개 이상이냐의 차이만 있을 뿐입니다.

먼저 SUMIF 함수의 구조는 '=SUMIF(조건의 범위, 조건, [합계할 범위])'인데, 옵션 인수인 [합계할 범위]를 생략하면, 조건의 범위에서 해당 조건에 맞는 셀 값들을 합계합니다. 즉, 아래의 D13 셀의 수식을 '=SUMIF(B3:B9,">=3",B3:B9)'은 곧, B3:B9의 범위에서, 3보다 큰 값들의 합을 B3:B9의 범위에서 찾아서 모두 더하라는 의미입니다. 물론 이 경우에는 조건의 범위와 합계할 범위가 동일하므로, 합계할 범위를 함수 구성에서 제외해도 상관없습니다.

또한 한가지 더 주의할 점이 보통 엑셀에서 함수를 구성할 때, 인수가 텍스트인 경우 쌍따옴표(" ")로 해당 텍스트를 묶어 주는데, SUMIF 함수와 SUMIFS 함수에서는 조건 인수를 숫자 또는 텍스트에 상관없이 쌍따옴표로 처리해야 합니다. SUMIF 함수가 사용될 수 있는 예제와 해당 함수의 조건 인수 처리에 대한 방법은 아래의 포스팅에서 상세하게 다루고 있습니다. 참고해 주시기 바랍니다.

엑셀배우기, COUNTIF/SUMIF/COUNTIFS/AVERAGE 함수로 전체 평균 이상인 학생들의 평균 구하기!

엑셀배우기, SUMIF 함수로 재고 관리하기!

 

 

SUMIFS 함수의 구조 또한 어렵지 않습니다. '=SUMIFS(합계할 범위, 조건 1의 범위, 조건 1, 조건 2의 범위, 조건 2, ...)'입니다. 따라서 아래의 D14 셀의 수식, '=SUMIFS(D3:D9,B3:B9,">=3",C3:C9,">=3")'은 D14의 수식 은 곧 B3:B9의 범위에서 3보다 크고, 동시에 C3:C9 범위에서 3보다 큰 값들이 대응하는 행 값을 D3:D9 범위에서 찾아 모두를 더하라는 의미가 됩니다. 따라서 5행, 6행, 7행의 값인 15, 16, 15를 더해서 46의 결과 값을 반환한 것입니다. SUMIFS의 함수 구성과 기능 또한 이해하기 어렵지 않으니, 아래의 예제를 참고하시어 확실하게 해당 함수에 대한 내용 정리를 마치시기 바랍니다.

엑셀배우기, SUMIFS 함수로 월별/품목별 판매수량/매출액 구하기!

  

  


마지막으로, SUMIFS 함수 아래에 SUMPRODUCT 함수를 한번 더 사용했습니다. 그리고 이 SUMPRODUCT 함수는 가장 위에서 사용한 기본 기능인, 두개 이상 범위의 대응되는 값들끼리 곱해서(PRODUCT) 더하는(SUM) 기능을 사용한 것이 아닙니다. 동일한 SUMPRODUCT 함수지만, 다른 기능을 사용했고, 이 기능은 SUMIFS의 다중 조건의 합을 구하는 기능과 완전히 동일합니다.

이처럼 SUMIFS 함수와 동일한 기능으로  SUMPRODUCT 함수를 구성하려면, '=SUMPRODUCT(합계할 범위 * (조건1의 범위=조건1)*(조건 2의 범위=조건2)*조건 3의 범위=조건3)'로 수식을 구성합니다. 합계할 범위를 함수 구성의 맨 앞에 두고, 필요한 조건의 범위와 조건을 * 연산자로 계속 이어주기만 하면 되는겁니다. SUMIFS 함수와의 차이는 조건 인수를 별도로 쌍따옴표(" ")로 묶어줄 필요가 없다는 것 뿐입니다.

둘 모두 다중 조건의 합계를 구할 수 있는 함수이니, 본인이 더 편한 함수를 골라서 사용하면 되겠습니다. 참고로 SUMPRODUCT 함수를 활용한 에제는 아래의 포스팅을 참고해 주시기 바랍니다.

엑셀배우기, SUMRPDUCT 함수로 다중 조건의 합 구하기!

 

댓글