Excel (エクセル) 学習室 / KENZO30

Excel(エクセル)学習室 HOME


エクセル中級 仮番3-4

中級・特別編トップへ

   中 級 仮番 3-4(暫定番号)

Excelの基礎

  データベース関数(DMAX、DMIN関数)
  データベース関数・実践的な使い方

 

 

データベース関数(DMAX、DMIN関数)

DMAX、DMIN関数

DMAX関数は、リストの指定した列を検索し、検索条件を満たすレコードの最大値を求める関数です。逆にDMIN関数は、最小値を求める関数です。

書式で表すと
DMAX(Database, フィールド, Criteria)DMIN(Database, フィールド, Criteria)
となります。

それぞれの引数の意味や指定方法は、中級仮番3などで解説したとおりです。

 

 

使用例

下図は、DMAX、DMIN関数でそれぞれ指定期間のパソコン、プリンター両製品の売上金額の中から、最高金額、最低金額を求めたものです。


図の数式バーは、DMIN関数の式ですが、DMIXでも引数は全く同じです。

引数のDatabaseは、「A8:F16」、フィールドは、金額を求める式なので「F8」とし、Criteriaは、「A1:F3」としています。


これまで解説で使用した式は、解説を分り易くするため引数をほとんどセル参照で求めていますが、実務では、対象とするDatabaseなどには名前を付け(名前の定義)て式を作ることが多いものです。つまり、通常リストは、広範囲なものになりやすく名前で定義した方が便利だからです。
(名前の定義については、特別編6、7、8参照)

例では、「パソコン*」とワイルドカードを使っていますが、このような場合、エクセル97、2000、2003では単に「パソコン」でも同じ結果を求めることができます。ただし、要注意です。
関連情報
中級仮番3-2-1 を参照してください。

 

先頭へ戻る

 

 

データベース関数・実践的な使い方

データベース関数の欠点と利点

データベース関数は、これまで解説したように検索条件を、ワークシート上へ書き出し、これを引数のCriteria(クライテリア)として指定します。検索条件をワークシート上へ書き出さなければならないので、他の関数に比べれば余分な作業であり、このことはデータベース関数の欠点といえます。
また、Excelにはリストから目的のデータを検索・抽出するのに、他にいろいろな機能・方法があるので、わざわざデータベース関数を使いたくないという傾向もあります。

しかし、一方で複雑な条件で検索や抽出ができるので、条件の指定方法に慣れると非常に便利に使うことができるものです。また、関数をセル参照や名前の定義で使えば、リストのデータを変更・追加、並べ替えをしても関数を修正することなく、常に最新データから自動的に検索と抽出をしてくれます。このことは、データベース関数の大きな利点といえます。
検索条件をワークシートに書き出さなければいけないことは欠点ですが、これとて上手く利用すれば他の関数以上に便利に使うことができます。ここで一例を紹介します。

 

ドロップダウンリストの利用

下図のリストが「sheet1」にあって、「sheet2」へ検索条件を作って検索・抽出をする例です。実務上で作成するリストは、この例よりもっと大きいものですが、これはあくまで解説用と考えてください。


まず、左図のようにリスト範囲を選択し、名前を付けます。大きなサイズのリストを扱うには、セル参照より名前を付けた方が便利です。
名前は「販売リスト」としています。

名前の定義は、特別編で解説を予定していますが、手っ取り早く名前を付けるには、リスト範囲を選択し、名前ボックスへカーソルを入れ、「販売リスト」と打ち込みます。


左図は、「sheet2」へ作った条件表とデータベース関数です。

数式バーの平均販売金額を求める式は、名前の定義列見出しセル参照で作っています。

引数のDatabaseは、「販売リスト」とし定義された名前を入力、フィールドは、金額の平均を求める式なので「金額」としリストの列見出しを入力、Criteriaは、「A1:B2」としセル参照で入力しています。
一見すると、単に名前の定義を使っただけのものですが、実は下図のようにいろいろな工夫をしています。


検索条件表(納品日、製品名)は、左図のように入力規則ドロップダウンリストを使っています。
(ドロップダウンリストの作り方は、初級10参照)
また、何を検索・抽出しているのか判るように、条件を検索先へリンクさせています。
(A8は=B2、B8は=A2)

更に、ユーザー定義の表示形式(特別編参照)を使い「個」や「円」を表示させています。
このように、検索条件をドロップダウンリスト化すれば、ドロップダウンリストから条件を選択するだけで、簡単にデータの検索・抽出ができるようになります。
ある程度決まった条件で検索・抽出する場合は、非常に便利に使うことができる技です。工夫次第でもっと大きなリストから、様々な形で検索・抽出するのにも使えますので、研究してみてください。
なお、条件を空白にする場合は、条件のセルを選択後、「Delete」キーで消します。「Delete」キーで消しても、ドロップダウンリストからは消えません。

さて、データベース関数の利点は、リストのデータを変更・追加、並べ替えをしても関数を修正することなく、常に最新データから自動的に検索と抽出できることにあると書きましたが、実際にリストへ新規データを追加(行の追加)するにはどうすれば良いでしょうか。
それは、リストへ行を挿入して、新規データを入力することです。リストの最下にデータを追加してはいけません。リストの最下にデータを追加すると同じリストのデータとして認識されません。
すでに関数で式を設定している場合は、必ずリストの任意の位置へ行を挿入して、新規データを入力します。行の挿入であれば、セル参照でも名前の定義でも、自動的にリスト範囲が変更され、同じリストとして認識されます。並べ替え()の必要があれば、自由に並べ替え()て大丈夫です。

例では、「パソコン*」とワイルドカードを使っていますが、このような場合、エクセル97、2000、2003では単に「パソコン」でも同じ結果を求めることができます。ただし、要注意です。
関連情報中級仮番3-2-1 を参照してください。

   先頭へ戻る   

 

中級・特別編トップへ

Excel(エクセル)学習室 HOME


KENZO30 内容の無断転載は、禁止しています