DSUM関数は、Database(データベース)関数のひとつで、あらかじめセルに書き出した複数の検索条件に一致するデータだけを合計する関数です。
SUMIF関数(単一条件)やSUMIFS関数(複数条件)と似ていますが、DSUMは条件の設定が「条件表」という独立した表で行えるため、条件の追加や変更が非常に簡単です。
DSUM関数基本構文
DSUM関数は、以下の3つの引数(ひきすう)だけで構成されています。
=DSUM(データベース, フィールド, 検索条件範囲)
| 引数名 | 役割 | 設定内容(例) |
| データベース | 集計対象の元データ全体 | 見出し(項目名)を含む全範囲 |
| フィールド | 合計したい列 | 合計対象の列の見出し名(セル参照 or 文字列) |
| 検索条件範囲 | 条件を記述した表 | 見出し行と条件行を含む範囲 |

該当金額【F6】に検索結果が表示
=DSUM(A2:D12,D2,F2:G3)
【必須】「検索条件範囲」の作成ルール
DSUM関数を使う上で最も重要なのが、「検索条件範囲(条件表)」を正しく作成することです。
① 見出し(フィールド名)のルール
条件表の1行目には、集計対象のデータベース(元データ)の見出しと完全に一致する名前を入力します。

② 条件の記述方法:ANDとORの使い分け
条件表の2行目以降に、具体的な条件を記述します。縦と横の並べ方で、条件が「AかつB(AND)」になるか「AまたはB(OR)」になるかが決まります。
🅰 AND条件(同じ行に記述)
複数の条件を同じ行に記述すると、「すべてに一致するデータ」(AND条件)を検索します。
例:費目が「通信費」かつ 社員名が「井上」の金額を合計
上記の例では、費目(F2)と社員名(G2)の見出しの下に、条件としてそれぞれ 通信費 (F3) と 井上 (G3) を同じ行(3行目)に入力しています。
- 数式:
=DSUM(A2:D12, D2, F2:G3)

この数式は、「元の表(A2:D12)の中から、F2:G3の条件(通信費かつ井上)に一致するデータを探し、金額列(D2)を合計せよ」という意味になり、結果として35,000円が返されています。
🅱 OR条件(異なる行に記述)
条件を異なる行に記述すると、「いずれかに一致するデータ」(OR条件)を検索します。
例:費目が「交通費」または「会議費」の金額を合計
| 費目 | 社員名 |
| 交通費 | |
| 会議費 |
この場合、検索条件範囲は「見出し+2行」の範囲(例:F2:F4)となります。
AND・OR条件表
AND条件(同じ行に記述)
費目が「交通費」、かつ社員名が「川村」
| 費目 | 社員名 |
| 交通費 | 川村 |
OR条件(異なる行に記述)
費目が「交通費」または「会議費」
| 費目 |
| 交通費 |
| 会議費 |
OR条件(異なる行に記述)
費目が「交通費」または社員名が「川村」
| 費目 | 社員名 |
| 交通費 | |
| 川村 |
応用テクニック:あいまい検索と大小比較
検索条件には、具体的な値だけでなく、比較演算子やワイルドカードも使えます。
① 数値の大小比較(比較演算子)
条件に不等号(< や >)を使うことで、数値や日付の範囲を指定できます。
- 例: 項目名を
金額、条件を>10000とすれば、10,000円を超えるものだけが対象になります。 - 日付の例: 項目名を
日付、条件を>2025/11/4とすれば、11月5日以降の金額だけを合計できます。

② ワイルドカードを使ったあいまい検索
*(アスタリスク)や ?(クエスチョンマーク)を使うことで、あいまいな検索ができます。
- 例: 費目の条件に
*品代*と入力すれば、「通信費」「備品代」など、前後に何か文字があっても「品代」という文字を含むものをすべて合計できます。

DSUMのメリットとSUMIFSとの違い
DSUM関数は古いデータベース関数ですが、現代でもSUMIFS関数にはない大きなメリットがあります。
SUMIFS関数: 複数のAND条件は得意だが、OR条件の集計が苦手(複数回に分けて足す必要がある)。DSUM関数: 検索条件範囲に条件を縦に並べるだけで簡単にOR条件を指定できる。条件の数が多くなっても、条件表を見れば一目瞭然で管理しやすい。
複雑なOR条件や、条件の変更が多い集計作業においては、DSUM関数は現在でも非常に強力な選択肢となります。



運営者プロフィール
パソコンインストラクターの経験を生かして、シニアの方や初心者の方に、WordやExcelの「できた!」を届けるために活動しています。