スプレッドシートのSUBTOTAL関数とは
SUBTOTAL関数は指定した集計関数を使用して、セルの垂直範囲の小計を返すGoogleスプレッドシートの数学関数です。この関数は複数の範囲を対象に、AVERAGEやSUM、COUNTなどの11種類の集計処理を一度に実行できます。
関数コードには1から11までの数値を指定し、それぞれ異なる集計機能に対応しています。隠れたセルを除外したい場合は、関数コードの前に10を付加することで、フィルタリングされた表示結果のみを対象とした計算が可能です。
【PR】プログラミングや生成AIを無料で学べる「コードキャンプフリー」
基本的な関数コードの種類
SUBTOTAL関数では11種類の関数コードが用意されており、コード1はAVERAGE、コード2はCOUNT、コード3はCOUNTAを表します。コード4から6はそれぞれMAX、MIN、PRODUCTに対応し、コード7と8はSTDEVとSTDEVPの標準偏差計算を担います。
=SUBTOTAL(1,A2:A10)
=SUBTOTAL(9,B2:B10,C2:C10)
=SUBTOTAL(109,D2:D10)
コード9はSUM関数、コード10と11はVARとVARPの分散計算を実行します。隠れたセルをスキップしたい場合は、関数コードに100を加算することで、オートフィルタで非表示になったデータを除外した計算が行われます。
動的ダッシュボードでの活用方法
SUBTOTAL関数は関数コード引数を別のセルで参照することで、動的なダッシュボードの構築に利用できます。データ検証のリスト機能と組み合わせることで、ドロップダウンリストから選択した集計方法に応じて、リアルタイムでダッシュボード全体が更新されます。
=SUBTOTAL(E1,A2:A100)
セルE1にデータ検証でリスト「1,9,4,5」を設定
フィルタリングされた領域の上部に小計ダッシュボードを作成することで、フィルタ条件が変更されるたびに自動的に新しい集計結果が表示されます。SUBTOTAL関数は範囲内の他のSUBTOTAL関数を無視するため、単純なSUM関数で発生する二重カウントの問題を効果的に回避できます。
※上記コンテンツの内容やソースコードはAIで確認・デバッグしておりますが、間違いやエラー、脆弱性などがある場合は、コメントよりご報告いただけますと幸いです。
ITやプログラミングに関するコラム
- Canvaとは?使い方やアカウント登録などを初心者向けに解説
- git configで設定情報を確認・表示する方法
- 「Pythonはやめとけ」と言われる理由と学習するメリット
- Ubuntuのversionを確認する方法
- Geminiで画像を生成する方法|ChatGPTとの比較結果も紹介