Excel(エクセル)で条件を満たした場所だけを合計する方法|DSUM関数の使い方

スポンサーリンク
スポンサーリンク
スポンサーリンク

Introduction

Ver. all 2013 2016 2019 2021 365

エクセルで複数の条件付きで合計する時に便利なDSUM関数を紹介します。

条件付きの合計を算出する関数としてはSUMIF関数やSUMIFS関数があるのですが、複雑な複数の条件を付けて合計したい時はここで紹介するDSUM関数が便利です。

また、〇〇を含む、○〇以外などの条件や、日付や文字での作成方法を例として説明します。


DSUM関数・・・条件を満たす列の合計を返す

=DSUM(データベース , フィールド , 検索条件)

  • データベース・・・見出しを含めた表全体を指定
  • フィールド・・・合計する列を指定(左からの列番号か見出しの文字列を指定)
  • 検索条件・・・検索条件を作成した表を指定

 

単一の条件の場合はSUNIF関数の方が簡単なので、下のリンク先をご覧ください。

Excel(エクセル)で項目別など条件を付けて合計する方法|SUMIF関数の使い方
Excel(エクセル)で、項目別に合計する方法です。使用するのはSUMIF関数。条件に一致したものを合計することができます。

また、単純な複数条件でバージョン2007以上を使用している場合はSUMIFS関数がお勧めです。

Excel(エクセル)で項目別など複数の条件を付けて合計する方法|SUMIFS関数の使い方
Excel(エクセル)で、複数の条件を指定して合計する方法です。使用するのはSUMIFS関数。複数の条件に一致したものを合計することができます。

 

 

条件付けのための表が必要になるにゃ

スポンサーリンク

DSUM関数の使い方

今回は、下の表から「商品区分」が「おもちゃ」の「金額」を合計してみます。

最初にDSUM関数のポイントです。

DSUM関数は、検索条件を別の表で作成しておく

検索するための条件を、わざわざ別の表を作成して用意しておく必要があります。

正直面倒・・・。

でも、別の表を作成することで複数条件など、複雑な条件を指定する場合は利便性が高くなります。

 

今回は、「商品区分」が「おもちゃ」という条件を別の表で作成します。

その際、元の表の見出しを利用するのがおすすめです。

 

まず、見出しを選択して、
※見出しは条件で使用するものだけで良いのですが、条件の見た目が後で分かり易くなるので全体をコピーするのがお勧めです。

コピー。

どこか空いている場所に貼り付けます。

見出しを貼り付ける場所はどこでも良いのですが、表の下に貼り付ける場合は、1行以上空ける必要があります。

貼り付けた見出しを利用して、検索条件を作成します。

今回は「商品区分」が「おもちゃ」だけを合計したいので、

下のように、商品区分の下に「おもちゃ」と入力します。

今回の条件のための表はこれで終了。細かい条件の作成方法は後で説明していきます。

では、DSUM関数を使用して「商品区分」が「おもちゃ」の「金額」合計を算出します。

結果を表示するセルを選択して[関数の挿入]ボタンをクリック。

[関数の分類]を[データベース]か[すべて表示]に切り替えて「DSUM」を選んで[OK]。


DSUM関数・・・条件を満たす列の合計を返す

=DSUM(データベース , フィールド , 検索条件)

  • データベース・・・見出しを含めた表全体を指定
  • フィールド・・・合計する列を指定(左からの列番号か見出しの文字列を指定)
  • 検索条件・・・検索条件を作成した表を指定

 

引数の指定は3つ必要です。

まず、[データベース]には元の表全体をマウスで選択しましょう。その際、見出しを含めるのを忘れずに。

次の[フィールド]の場所は、合計したい列を指定します。

合計したい列が「表の左から何列目」かを数字で指定します。

今回の場合は「金額」が左から5列目なので「5」と入力します。

この列指定は、対象の列見出しを文字で入力したり、下のようにセル番地で参照してもOKです。
※直接文字を入力する場合は「”」で囲む必要があります。

最後の[条件]は、先ほど作成した条件付けのための新たな表全体を選択します。こちらも見出しを含めて選択します。
※検索で使用する見出しが含まれていれば全体を選択しなくてもOK。

[OK]を押せば結果が表示されます。

合計は「580000」だったようです。

 

作成した条件によって、様々な合計を算出することができます。

例えば、下のような条件表を作成すると、「東京本店」だけの「かりかり」の合計が算出できます。

スポンサーリンク

条件設定する表の作り方

条件を設定するための表作成が面倒に感じるかもしれませんが、その代わりに複雑な条件が作成可能です。

〇以上や〇以下の場合

条件には比較演算子を使用します。下を参考にしてください。

演算子意味使用例説明
=等しいA=BAとBは等しい
<>等しくないA<>BAとBは等しくない
>より大きいA>BAはBより大きい
<より小さいA<BAはBより小さい
>=以上A>=BAはB以上
<=以下A<=BAはB以下

※等しい場合の「=」は入力する必要はありません
※文字列だけを入力した場合は、常に「=」条件として扱われます。
※記号は全角ではなく半角で。

例えば下の表で、

国語が90点以上という条件の場合は、「国語」の下に「>=90」と入力します。

〇以外の場合

〇以外の場合は、先ほどの「等しくない」と同じ意味になるので「<>」を使用します。

例えば「商品区分」が「かりかり」以外の条件を作成したい場合は下のようになります。

複数条件を作成する場合

複数条件を作成するときは、AND条件とOR条件の2つから選ぶことができます。

AND・・・複数の条件全てを満たしものだけを抽出する

OR・・・複数の条件どれかを満たした全てを抽出する

ここで条件を作成する際の大切なポイントです。

  • AND条件は同じ行に入力する
  • OR条件は行を分けて入力する

例えば3教科すべてが「80点以上」を条件としたい場合は下のように条件を同じ行に入力します。

3教科どれか1つでも「80点以上」になっていれば良いという条件であれば、下のように条件をずらして入力します。

日付で条件を指定する場合

日付で条件を指定する場合も比較演算子を使用します。

例えば「2022/8/25」以降の条件にしたい場合は「>=2022/8/25」となります。

〇日から〇日と指定したい場合は、AND条件になるので1行に条件を入れる必要があります。

そのため同じ見出しを2つ用意します。

例えば「2022/8/25」から「2022/8/30」までの条件にしたい場合は下のように条件を作成します。

ワイルドカードの使い方

ワイルドカードとは、類似した情報を持つデータを検索する場合などに使用する、テキストや文字をあらわすものです。

  • 「?」・・・任意の1文字を表す
  • 「*」・・・任意の複数文字列を表す

例えば2文字目が「田」で始まる名前を条件にしたい場合は、「?田」と入力します。

まとめ

SUMIF関数の影になりがちなDSUM関数の説明でした。

別の表を作成することで、どのような条件で合計したかを後から確認するのが楽になります。

SUMIF関数やSUMIFS関数で条件が上手く作成できない時に思い出したい関数です。

 

DSUMの「D」は「DATABASE」の「D」だにゃ