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