簡単集計のための関数!DCOUNTAとDSUM関数の使い方と実例

Sheet基本

DCOUNTA・DSUM 完全ガイド
条件範囲で柔軟に絞り込む旧世代の集計関数

COUNTIFS・SUMIFSより古い関数だが、条件をセル範囲で管理できる特徴がある。条件が多い・変動する場合の集計で今でも使われるパターンを解説する。

GASとの関係:条件をシートで管理してGASから呼び出す設計

DCOUNTA/DSUMの「条件範囲をセルに書く」発想は、GASで集計する際の「設定シートから条件を読み込む」設計と同じ方向性です。条件の外部化という考え方が共通しています。

GASで自動化を学ぶ →
目次

D関数(データベース関数)とは

DCOUNTA・DSUMはExcel由来のデータベース関数(D関数)で、条件をシートのセル範囲(条件範囲)として指定します。COUNTIFSやSUMIFSと機能は同じですが、条件の管理方法が違います

基本構文

=DCOUNTA(データベース, フィールド, 条件範囲)
=DSUM(データベース, フィールド, 条件範囲)
引数内容
データベースヘッダー行を含むデータ全体の範囲
フィールド集計する列のヘッダー名(引用符で囲む)または列番号
条件範囲別の場所にヘッダー+条件値を並べたセル範囲

基本的な使い方

データが A1:E100 にあり、F1:G2 に条件範囲を書く場合:

// F1: "地域" G1: "売上"
// F2: "東京" G2: ">=50000"
// → 東京 かつ 売上50000以上の件数

=DCOUNTA(A1:E100, "担当者", F1:G2)
=DSUM(A1:E100, "売上", F1:G2)

COUNTIFSとの比較

比較DCOUNTA/DSUMCOUNTIFS/SUMIFS
条件の書き場所シート上の条件範囲(セル)関数の引数の中
OR条件条件範囲の行を増やすだけ(得意)別途工夫が必要
可読性条件が外にあるため式がシンプル条件が式の中に埋まる
普及度使われることが少ない現代の標準

D関数の強み:OR条件が簡単に書ける

// 東京 または 大阪 の売上合計(OR条件)
// 条件範囲(F1:F3):
// F1: 地域
// F2: 東京
// F3: 大阪

=DSUM(A1:E100, "売上", F1:F3)
// → 東京行 + 大阪行 の売上合計(ORでまとめて集計)

SUMIFS はAND条件のみなので、ORはSUMIF2回+加算か、SUMPRODUCTが必要です。D関数なら条件行を追加するだけでORが実現できます。

今D関数を使うべき場面

  • 条件が多くなりやすいダッシュボードで、ユーザーが条件をシートから変更できるようにしたい
  • OR条件が複数あってSUMIFSでは書きにくい場合
  • 既存のExcelシートとの互換性が必要な場合

新規で作るならCOUNTIFS/SUMIFSを使う方がシンプルで保守しやすいのが一般的です。

この知識をGASで活かす

D関数の「条件をセル範囲で管理する」設計は、GASで「設定シートから条件を読み込んで集計処理する」パターンに発展します。条件の外部化によって、GASコードを変更せずにシートから動作を制御できます。

Free Newsletter

AIを業務に活かしたいなら
SMR-Labメルマガ

毎週火曜10時、コピペで使えるChatGPTプロンプト・
GASテンプレートをお届け。登録は1分・完全無料。

▶ 無料で登録する

📧 無料メルマガ登録

DX・AI活用のヒントを週1回お届け。登録特典:すぐ使えるプロンプト集&GASテンプレート。

登録情報は第三者に提供しません。いつでも配信停止できます。

目次