Excel(エクセル)で最大値と最小値を求めるためにはMAX関数やMIN関数が便利です。
しかし、『条件を指定して最大値と最小値を求める方法は?』と聞かれると、どのように対応すればいいか困ってしまう方は多いのではないのでしょうか。
そんな時は、データベース関数のDMAX関数(ディーマックス)とDMIN(ディーミニ)関数を使うと便利です。
今回の記事では、(複数)条件を指定して最大値と最小値を求めるDMAX関数とDMIN関数の使い方をご紹介します。
具体的に、この関数は以下のような場面で利用出来ます。赤字が『(複数)条件』です。
- マラソン大会の結果のうち、男子の1番速かったタイム、女子の一番速かったタイムを調べる
- 算数テストの結果のうち、Aクラスの最高得点を結果を調べる。
- 算数テストの結果のうち、Aクラスの女子の最高得点を結果を調べる。
- 商品売上リストのうち、A製品が売れた最新の売上日を調べる。
最大値と最小値を求める方法
条件を指定せずに最大値と最小値を求める時は、MAX関数(マックス)とMIN関数(ミニ)を使います。
下のテスト結果表のように、対象範囲のE列(得点列)を選択するだけのシンプルな関数です。
=MAX(数値1,[数値2],…)
=MIN(数値1,[数値2],…)
では、この得点表で『Aクラスの最高点』『Aクラスの最低点』を求める場合はどうすれば良いでしょうか。
次の見出し以降でご紹介します。
DMAX関数とDMIN関数の構文
『条件を指定して最大値や最小値を算出する』時は、DMAX関数、DMIN関数を用います。
まずはこの2つの関数の構文をご紹介します。
=DMAX(データベース,フィールド名,条件)
=DMIN(データベース,フィールド名,条件)
引数(※)は3つ設定する必要があります。引数の説明は以下の通りです。
- データベース:検索先になるデータベースを指定します。項目名も含めた表全体のことを指しています。(例:B2:E12)
- フィールド名:検索先のフィールド名を設定します。最大値(最小値)を探す”項目名”のことです。(例:”得点”、E2)
- 条件:フィールド名を含む条件を指定します。項目名と条件を入力したセルを指定します。(例:H2:H3)
※引数(ひきすう)とは、エクセル関数を使用する際に必要な情報です。
引数の設定方法が独特なので、次の見出しでそれぞれの引数を詳しく理解していきましょう。
条件を指定して最大値と最小値を求める方法
下の得点表を使って『Bクラスの最高点』『Bクラスの最低点』をDMAX関数とDMIN関数を使って求める手順を解説します。
手順1.1つ目の引数「データベース」を指定
最高点を求めたいセルに、DMAX関数を挿入して、一つ目の引数である「データベース」を指定します。
「データベース」は最高点を求めたい範囲全体を項目名も含めて選択します。
=DMAX(B2:E12,
手順2.2つ目の引数「フィールド名」を指定
続いて、2つ目の引数である「フィールド名」を指定します。「フィールド名」は最大値(最小値)を探す”項目名”のことなので、E2セルを指定します。
=DMAX(B2:E12,E2
手順3.3つ目の引数「条件」を指定
最後に、3つ目の引数である「条件」を指定します。「条件」は”項目名と条件を入力したセル”のことなので、H2セル、H3セルを指定し、「Enter」キーで関数を確定させます。
=DMAX(B2:E12,E2,H2:H3
手順4.最大値(最小値)を確認
下の図のように最大値が算出されました。最小値もDMIN関数を同様の引数の設定を行うことで算出することが可能です。
条件を「〇〇以上」「△△以下」で最大値を算出
条件は「〇〇歳以上」「△△歳以下」というような条件で最大値(最小値)を求めることも可能です。
下の図のように、3つ目の引数「条件」の指定先のセルに、「>=40」「<40」と入力することで、「40歳以上の最高点」「40歳未満の最高点」を算出することが可能です。
条件を完全一致で最大値を求める
検索条件のF3セルに「オフィス機器」と入力した結果ですが、赤い矢印で示した「オフィス機器(マウス)」の売り上げがF6セルに最大数量として抽出されています。
「オフィス機器(マウス)」にも「オフィス機器」という文字が含まれているからです。
では、この表から「オフィス機器」の最大値を求める場合は、どうすればよいでしょうか。
それは、条件の入力セルに「="=検索するワード"」を入力すれば検索できます。
下の図のように「="=オフィス機器"」とすることで正しく最大値を算出することが出来ます。
複数条件で最大値と最小値を求める方法
DMAX、DMIN関数は条件を”複数”で利用することも可能です。
例えば、下の図のようにテスト結果のうち、”Bクラスの女性の中で最高得点”を算出したい場合は、引数:条件を「H2:I3」を範囲選択することで最大値を求めることが出来ます。