よく使うEXCELの関数集7(データベース関数)

データベース関数

前回は検索・行列関数のご紹介をいたしました。

前回EXCELへのデータが多くなってきて検索行列関数が役に立つとお伝えしましたが、データ量が多くなってくるとデータベースという考え方が必要になってきます。

今回はエクセルの表をデータベースのテーブルに見立てて、指定した条件でデータをカウントしたり合計する方法をご紹介します。

データの個数をカウントする(DCOUNT、DCOUNTA)

DCOUNT  : 指定した条件に一致するデータの個数をカウントする
 使用方法  : (データベースとして使用する表の範囲, 個数を数えたいフィールド(項目名), 条件)
        ※COUNTIFと似ていますが、DCOUNTでは条件を複数指定できます。
 使用例   : =DCOUNT(B2:E7,C2,B10:D11)

【説明】
 まず、個数をカウントしたい表を選択します。
 下図の場合B2からE7を範囲指定します。
 これを「データベースとして使用する表の範囲」として記載します。

 次にカウントしたい項目名を選択します。
 最後に抽出条件の範囲を選択します。

 個口数が2個より多くて金額が2000円以下の重量が8kg未満の個数が簡単に出せました。

DCOUNTA  : 指定した条件に一致する空白を除いたデータの個数をカウントする
 使用方法はDCOUNTと全く一緒です。
 この表の場合はどこを選んでも同じ結果になりますが、例えば個口数に空白が存在する場合には、その空白をカウントせずに合計数を表示できます。

指定した条件のデータを表示する(DGET)

DGET     : 指定した条件に一致した値を表示する
 使用方法  : (データベースとして使用する表の範囲, 表示したいフィールド(項目名), 条件)
 使用例   : =DGET(B2:E7,B2,B10:D11)
         ※VLOOKUPと似ていますが、DGETでは抽出条件を複数指定できます。
          ただし注意点として、条件に一致するデータが2件以上ある場合エラーになってしまいます。
 
【説明】
 基本的な使い方はDCOUNTと同じです。
 検索する範囲を選択し、一致した場合に表示したい項目名(フィールド)を指定し、条件の範囲を選択します。
 下図の場合、個口数が5個より多く金額が2000円以下、重量が9kg未満と指定すると、条件に合ったものは「リンゴ」であると表示されます。

指定した条件のデータを合計する(DSUM、DAVERAGE、DPRODUCT)

DSUM     : 指定した条件に一致した値を合計する
 使用方法  : (データベースとして使用する表の範囲, 合計したいフィールド(項目名), 条件)
 使用例   : =DSUM(B2:E7,D2,B10:D11)
         ※SUMIFと似ていますが、DSUMでは抽出条件を複数指定できます。

【説明】
 基本的な使い方はDCOUNTと同じです。
 検索する範囲を選択し、一致した場合に表示したい項目名(フィールド)を指定し、条件の範囲を選択します。
 下図の場合、個口数が5個より多く金額が2000円以下、重量が9kg未満と指定すると、条件に合ったものの合計金額は3580円であると表示されます。

★Tips★平均や積(掛け算)した値も計算して表示することができる

利用シーンとしてはあまり多くないですが、下記のような関数もあります。
DAVERAGE     : 指定した条件に一致した値の平均を表示する
DPRODUCT    : 指定した条件に一致した値の積(掛け算した値)を表示する


使用方法はDSUMと同じで、データベースの範囲を指定し、平均や積(掛け算)をしたい項目名(フィールド)を指定し、条件を指定します。

★Tips★データベース関数はSQLと似ている?

後にSQL(Structured Query Language)エスキューエルをご説明しますが、このSQLは
 Select  ~
 From  ~
 Where ~
という構成で基本的には作成されており、今回ご説明したデータベース関数と同じような条件の指定を行います。


例えば、今回のDSUMを例にとってみると

(データベースとして使用する表の範囲, 合計したいフィールド(項目名), 条件)

という条件を記載しました。

これをSQLに直すと、

 Select  合計したいフィールド(項目名)
 
From  データベースとして使用する表の範囲
 
Where 条件


となります。

この基本的な考え方を理解しておくとデータベースの概念が理解しやすくなりますので是非覚えておいてください。

いかがでしたでしょうか?
データベース関数は複数の条件を指定して表の中からデータを抽出したり、表の中のデータを計算したりできました。

この考え方はデータベースの基本になりますのでしっかり覚えておきましょう。

次回は情報関数についてご説明します。

そろそろEXCEL関数も大詰めになってきました。
EXCELやACCESSを利用してプログラミングを行う場合、多くのケースで関数と組み合わせて使うことが一般的です。
データベースやVBAのご説明をまもなく開始しますので、基本的な関数も今一度見直しておきましょう。

では、次回をお楽しみに。