[엑셀/구글스프레드시트] 필터된 데이터로 계산하려면 subtotal 함수를

     

    엑셀/ 구글스프레드시트 - 필터된 데이터로 계산하려면 subtotal 함수를 써보자

    엑셀 혹은 구글스프레드시트를 쓰면서 많이 사용하는 기능 중, 필터 기능과 sum() 함수가 있다.

    그런데, 이 두 기능을 함께 사용하면 원하는 결과를 얻지 못하는 상황이 발생한다.

     

    예제

    본 예제는 구글스프레드시트나 엑셀이나 동일하게 동작하며, 이 글에서는 구글스프레드시트로 테스트 하였다.

    위와 같은 예가 있다고 가정하자.

    그러면, 이 값들의 합을 구하려면

    = sum(range)

    의 형식을 사용하면 된다.

    즉, 위와 같은 결과를 얻을 수 있다.

    그런데, 이 상태에서 필터를 적용해서 계산해 보면 어떻게 될까?

    위에서 보다시피, 식사 항목으로만 필터 조건을 걸었는데, 전체 입력 데이터를 대상으로 합이 계산되었다.

    이 상황에서 내가 얻고 싶은 값은 오로지 식사 항목에 대한 값이다.

    이 문제는 sum() 함수 대신 다른 함수로 해결해 보자.

     

    반응형

     

    subtotal 함수

    글의 제목에도 소개한 바와 같이, 이 문제를 해결하는데 적절한 함수가 바로 subtotal 함수이다.

    먼저 실제 적용한 예제들부터 살펴보자.

    전체 입력 데이터중, 식사 비용만 걸러서 계산해 보았다.

    다음으로는, 쇼핑 비용만 걸러서 계산해 보았다.

    두 스크린 샷에서 볼 수 있다시피, sum 함수와 사용법은 거의 똑같다. 유일한 차이점이 있다면 중간에 9라는 숫자가 추가로 들어간 것 정도이다.

    필터링한 데이터를 기준으로 합을 구하기 위해 사용한 함수는 아래와 같다.

    = subtotal(9, range)

    스크린샷에 써 있는 형식과 일치한다.

    그러면, 저 9의 정체는 무엇일까?

     

    subtotal에서 사용할 수 있는 기능 설명

    이 표를 보자.

    앞서 사용한 9번 기능이 SUM의 기능이다.

    이 표를 참조하여, 내가 계산하고 싶은 함수를 바탕으로 subtotal을 구할 수 있다.

    평균, 카운트, 최대값, 최소값, 표준편차, 합 등등을 편하게 계산해 보자.

     

    더 보기

    댓글

    Designed by JB FACTORY