【DAVERAGE関数】データベース関数って使ったことある?
データベース関数とは、セル範囲の行をレコード、列をフィールドとして、セル範囲全体をリストとして、その範囲(データベースと言う)に対して条件を指定して様々なデータを取り出すのに便利に作られている関数です。
通常、セル範囲からデータを取り出したり集計を行う場合は、数式の中に条件を組み込むことが多いですが、この関数を使うと数式と条件を切り離すことが簡単になります。
つまり、簡単な分析を色々な条件を試しながら行いたい場合など、条件を別セルで容易することが出来るので非常に便利です。
データベース関数は色々ありますが、今回は、その中でも指定したセル範囲の中で条件を満たすデータの平均を出す「DAVERAGE関数」を紹介します。
DAVERAGE関数
データベースの中から、指定した条件に合致するデータの指定したフィールドの平均を出します。
データベースには、セル範囲を指定します。各列の一番上には見出しが必要です。
フィールドは、列見出しのことです。集計する対象の見出しか列番号を指定します。
条件範囲は、条件を入力した範囲になります。こちらも範囲の一番上は見出しが必要です。
使い方
【サンプル】
こんな表を用意しました。あんま意味はないです。
フィールドは、表の一番上の「店舗~売上」までの項目ですね。「F5:F6」に見出し付きで条件範囲を用意しています。
結果を、F12セルに表示させたいので、ここに数式を入れていきます。
入れる数式はこちらです。
=DAVERAGE(B4:D16,D4,F5:F6)
こんな感じになりますね。今回は「売上」のフィールドで集計するので、「D4」を指定しています。ここの指定方法は「”売上”」でも「3」でもOKです。「3」は列番号です。表の一番左の列を「1」とした時に、そっから数えた数です。
別の書き方1
=DAVERAGE(B4:D16,”売上”,F5:F6)
別の書き方2
=DAVERAGE(B4:D16,3,F5:F6)
条件に「=”=A店”」をいれると次のようになります。
「=”=A店”」はA店と等しいという意味ですね。実際にF6セルには「=A店」としか表示されませんが、F6セルには「=”=A店”」と入力されているので注意してください。
このようにすることで、条件を変えるだけで、データベースから集計を行えるようになります。
ワイルドカードを使った条件入力
文字列で条件を入力するとき、「完全一致」だけでなく一部分だけあっている「あいまいな一致」も指定したいですよね。エクセルでは「ワイルドカード」という記号を使って、あいまいな一致を表現することができます。
同じサンプルで試していきましょう。
条件の範囲を「商品」に変更します。
F12セルは変更していないので、次の関数が入っています。
=DAVERAGE(B4:D16,”売上”,F5:F6)
これで、指定した条件は、商品の列で調べることになります。F6セルに次のような条件を入力してください。
=”=*ライス”
「」は「ワイルドカード」と呼ばれる記号の一つで、0文字以上の任意の文字列を表します。つまり「=”=ライス”」なのでライスで終わる文字列という意味になります。
※ライスで始まる文字列だと「=”=ライス*”」となりますね。「*」が一番後ろにつきます。
ライスで終わる商品は、「カレーライス」「オムライス」なので、その2つの商品の平均が表示されます。
ワイルドカードは他にも、「?(疑問符)」や「~(チルダ)」があります。それぞれ次のような意味です。
記号 | 意味 |
---|---|
「*」 アスタリスク | 0文字以上の任意の文字列 |
「?」 疑問符 | 任意の1文字 |
「~」 チルダ | ? や * の前につけ、文字列中の「*」や「?」自体を検索します。※ワイルドカードになっている記号を検索したいときに、これはワイルドカードじゃないぞって教えてあげる記号ですね。 |
ワイルドカードは、データベース関数だけでなく、検索系の関数ではよく使いますので、しっかり覚えておきましょう!
まとめ
落ち着いてどこが何を表しているのかを整理して組み立てていくことが大切です。
データベース関数をうまく組み合わせることで、データ抽出がサクサク出来る表が作れそうですね!データベース関数は他にも色々あります(最初に「D」がつく関数です)が、得られる結果が違うだけで使い方は基本的には同じです!今後ぼちぼち紹介していきます。
おまけ
その他のデータベース関数と条件の指定方法についてはこちら!
コメント