이전 글에서는 COUNTIF라는 ‘조건에 부합하면 세 주는’ 함수에 대해 배웠는데 SUMIF는 ‘조건에 부합하는 것만 합쳐주는’ 함수다. 예를 들어서 어떤 편의점에서 30대 여성이 구매한 가격의 총계를 구한다거나, 삼각김밥의 판매총계를 구한다거나…
![](https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FcOkLtT%2FbtsBiSS3nve%2FFx9BywNnSqSFBLVsoSgdKk%2Fimg.png)
가상의 강의 사이트를 이용하는 이용자 데이터이다. 여기서 언어는 자바, C++, 파이썬 세 개로 했고(자바스크립트는 와일트카드 쓸 때 자바랑 혼동될 위험이 있다), 난이도에 따라 수강료가 다르다. 여기서 중급 강의를 듣는 사람들의 수강료 총계는 얼마일까?
![](https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FHPGot%2FbtsBfiSP402%2F3xXRGzk8a6N7JFqJxjx0x0%2Fimg.png)
11만원이랜다. SUMIF는 COUTIF와 달리 입력 인자가 세 개인데, 중급 강의를 듣는 사람들의 수강료 총계를 구하기 위해서는 =SUMIF(D2:D12,”=중급”,E2:E12)를 쳤다. 가운데가 조건인 건 알텐데, 양 옆에 두개는 뭐죠? D2:D12는 우리가 조건에 부합하는지 찾을 줄, 그러니까 강의 난이도이다. 그리고 E2:E12는 합계를 구할 줄, 그러니까 수강료가 적혀있는 줄이다. 그러니까 쉽게 말하자면 SUMIF는 (여기서, 이 조건에 부합하는 걸 찾아서, 여기서 합계를 구해라)가 된다.
![](https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbhrF6b%2FbtsBipQWPTs%2F1k0BBSxBOqlpT7mpicMOuK%2Fimg.png)
이번에는 자바 수강생들의 수강료를 와일드카드를 이용해 구해봤다. COUNTIF와 SUMIF는 조건 설정할 때 와일드카드로도 가능하그덩. =SUMIF(C2:C12,”=J*”,E2:E12)를 치면 그런데 짜잔! 자바 관련 강의를 듣는 사람들의 수강료 총계가 나온다.
![](https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbrpDFN%2FbtsBj72YVdH%2FYGQydvz8pYskQaez8N0LP0%2Fimg.png)
이번에는 SUMIFS를 써보기 위해 데이터를 좀 추가했다. =SUMIFS(E2:E15,C2:C15,”P*”,D2:D15,”상급”)를 입력한건데, 이건 Python 상급 강의를 듣는 사람들의 수강료 총계를 표시해주는 것이다. SUMIF와 SUMIFS도 조건이 하나냐 여러개냐의 차이인데… 입력할 위치는 둘이 좀 다르다.
SUMIFS는 SUMIF와 달리 (여기서 합계를 구할건데, 여기서, 이 조건에 맞고, 여기서, 이 조건에 맞는거) 형식이 된다. 그래서 합계를 구할 셀이 가장 앞에 오고 그 뒤에 조건들이 따라붙는다. 물론 당연하게도, 여기서도 와일드카드가 통한다. 위에도 와일드카드 쓴거고.
![](https://img1.daumcdn.net/thumb/R1280x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FbeKdgu%2FbtsBiRmhBc7%2FbuPncBFwHBb9bKCyjYiEQk%2Fimg.png)
이건 =SUMIFS(E2:E15,C2:C15,”Java”,D2:D15,”초급”)으로 자바 초급 강의를 듣는 사람들의 수강료 합계를 보여준 것이다. COUNTIF와 COUNTIFS, SUMIF와 SUMIFS는 IF와 IFS가 그러하듯 조건이 하나냐, 여러개냐에 따라 적절히 사용하면 월급타면서 똥 쌀 시간을 벌 수 있는 굉장히 유용한 함수이다. 내 수능칠때는 IFS는 없었는데 그때 있었으면 백퍼 나왔음 저거.
Reply