【DSUM関数】データベース関数って使ったことある?
データベース関数とは、セル範囲の行をレコード、列をフィールドとして、セル範囲全体をリストとして、その範囲(データベースと言う)に対して条件を指定して様々なデータを取り出すのに便利に作られている関数です。
通常、セル範囲からデータを取り出したり集計を行う場合は、数式の中に条件を組み込むことが多いですが、この関数を使うと数式と条件を切り離すことが簡単になります。
つまり、簡単な分析を色々な条件を試しながら行いたい場合など、条件を別セルで容易することが出来るので非常に便利です。
データベース関数は色々ありますが、今回は、その中でも指定したセル範囲の中で条件を満たすデータを合計する「DSUM関数」を紹介します。
DSUM関数
データベースの中から、指定した条件に合致するデータの指定したフィールドの合計をします。
データベースには、セル範囲を指定します。各列の一番上には見出しが必要です。
フィールドは、列見出しのことです。集計する対象の見出しか列番号を指定します。
条件範囲は、条件を入力した範囲になります。こちらも範囲の一番上は見出しが必要です。
使い方
【サンプル】
こんな表を用意しました。あんま意味はないです。
フィールドは、表の一番上の「日付~個数」までの項目ですね。「F5:F6」に見出し付きで条件範囲を用意しています。
結果を、F12セルに表示させたいので、ここに数式を入れていきます。
入れる数式はこちらです。
=DSUM(B4:D18,D4,F5:F6)
こんな感じになりますね。今回は「個数」のフィールドで集計するので、「D4」を指定しています。ここの指定方法は「”個数”」でも「3」でもOKです。「3」は列番号です。表の一番左の列を「1」とした時に、そっから数えた数です。
別の書き方1
=DSUM(B4:D18,”個数”,F5:F6)
別の書き方2
=DSUM(B4:D18,3,F5:F6)
条件に「<=2020/5/2」をいれると次のようになります。
「<=2020/5/2」は「2020年5月2日以前」という意味です。その範囲で個数フィールドの数値の合計は「33」。結果に「33」が表示されていますね。
このようにすることで、条件を変えるだけで、データベースから集計を行えるようになります。
条件を変えてみましょう。
条件を「F5:商品」「F6:カレーライス」にします。
F12セルに入っている数式は、変更していませんので下記です。
=DSUM(B4:D18,D4,F5:F6)
F5セルに「商品」、F6セルに完全一致の条件式で下記を入力します。
=”=カレーライス”
ちょっと癖のある書き方なのでなれて下さい。入力した式と実際にF6セルに表示される見え方が違うので注意が必要です。
F12セルには、商品フィールドが「カレーライス」になっている個数フィールドの合計が表示されます。
まとめ
落ち着いてどこが何を表しているのかを整理して組み立てていくことが大切です。
データベース関数をうまく組み合わせることで、データ抽出がサクサク出来る表が作れそうですね!データベース関数は他にも色々あります(最初に「D」がつく関数です)が、得られる結果が違うだけで使い方は基本的には同じです!今後ぼちぼち紹介していきます。
おまけ
その他のデータベース関数と条件の指定方法についてはこちら!
コメント