Excel(エクセル)で指定した列で条件を満たす数値を合計する方法/DSum関数の使い方

large IT

データベースの中で、特定の条件を満たす値のみを合計するDsum関数のご紹介です。
はっきり言うとDsumで作るものは大体Sumifs関数で対応できる(しかも表の作り方が自由)んですが、Dsum関数を使うと複雑な条件でも比較的簡単に作れるので、計測する条件が増えれば増えるほど役に立つ……のかもしれません。

Advertisements

Dsum関数の使い方

指定列の条件を満たす値を合計
Dsum(データベース,フィールド(指定列),条件)
dsum1
このような家計簿の抜粋があるものとします。
dsum2
これを日別に分けてみたいと思います。
Sumif関数ならさしずめ=Sumif(A2:A10,”5月25日”,D2:D10)といったところですが、
dsum3
今回はDsum関数を用います。
dsum4
データベース,フィールド,条件はデータベース関数共通の引数です。まずデータベースですが、これは参照する表全体を見出しを含めて指定します。表には必ず見出しを設定してください。
dsum5
フィールドは合算する数値のある列の見出し、この場合「支出」があるD1を指定します。
dsum6
最後に条件ですが、これは見出しと条件値がセットになった範囲を指定します。この場合「日付」列の「5月25日」を条件にするので、H1:H2が対象となります。
dsum7
この状態で実行すると、5/25の支出が合算されます。
dsum8
この式は使い回したいので、$付けて絶対参照にします。=Dsum($A$1:$F$10,$D$1,H1:H2)という式になります。
dsum9
この状態でH1~I2を選択して、下にオートフィルで延ばしてやると、
dsum10
このように、日ごとの支出額が簡単に求められます。
dsum11
ついでに収入も作りましょう。さらに右に伸ばし、
dsum12
フィールドに「収入」のあるE1を指定、
dsum13
「支出」を「収入」に書き変え、
dsum14
K1~K2を下にコピーすれば、収入も一覧で求められます。

複数条件

dsum15
複数条件の場合ですが、
dsum16
条件で指定する列と値のセットを複数にすればOKです。
dsum17
日ごとの用途別支出が求められました。
dsum19
コピーしていくとこうなります。
dsum20
同じ列を二回条件に入れることもできますし、不等号を使うこともできます。
条件に>=2020/5/25<2020/5/30を入れることで、5/25~5/29の間の支出を求める、といったことも可能です。
やりたいことから方法を探すエクセルExcel操作・関数・VBA(マクロ)逆引きまとめ
逆引き(やりたいことから探す)Excel記事まとめ
関数・演算子・メソッド・プロパティ名から探すExcel/VBA(マクロ)使い方・組み合わせ方まとめ
こちらはExcelやメソッドの諸機能を、機能の名称から探せるまとめ記事です。

コメント