- 公開日:
- 更新日:
ExcelのDMAX関数の使い方|複数条件を満たす最大値を求める
この記事では、ExcelのDMAX関数の使い方についてご説明します。
DMAX関数で完全一致条件を設定する方法や、最新の日付を抽出する方法等についてご紹介していますので、ぜひ参考にしてみてください。
DMAX関数とは?
DMAX(ディーマックス)関数とは、データリストの中から条件に合う最大の数値を抽出する関数です。
例えば上の画像ではF6セルに、「成績表からAクラスの最高点を抽出する」という意味のDMAX関数が入力されています。
DMAX関数の書式
まずは、DMAX関数の書式を確認していきましょう。
DMAX関数の書式は「=DMAX(データベース,フィールド,条件)」のように引数を3つ使用します。引数を1つずつ確認していきましょう。
※引数(ひきすう)とは、Excelの関数を使用する際に必要な情報です。関数が結果を返す際の判断材料とイメージしましょう。関数名の後の括弧「()」内に入力します。
第1引数(データベース)
1番目の引数は「データベース」です。この引数は必須です。リストまたはデータベースを構成するセル範囲を指定します。リストの先頭の行には、各列の見出しが入力されている必要があります。
例えば上の画像では、「クラス」「氏名」「点数」という見出しで分けられたデータリストが入力されている「B3:D16」が「データベース」の引数として設定されています。
第2引数(フィールド)
2番目の引数は「フィールド」です。この引数は必須です。「フィールド」とはデータリストの見出しを指します。最大の数値を抽出する数値が入った見出しを「フィールド」の引数として設定します。
例えば上の画像では、F6セルに入力したDMAX関数で「Aクラスの最高点」を抽出しているので、成績表内の「点数」の見出しをフィールドの引数として設定しています。
第3引数(条件)
3番目の引数は「条件」です。この引数は必須です。あらかじめ条件となる見出しやデータを任意のセルに入力しておいて、そのセルを条件の引数として指定します。
例えば上の画像では、F2セルとF3セルを「条件」の引数として設定しています。
あらかじめ条件を入力する際は、画像内のF2セルとF3セルのように項目名とデータをデータリスト内と同じ表記で入力しておく必要があります。
DMAX関数の使い方
DMAX関数の使い方についてご説明します。
基本的な操作方法
DMAX関数を使って、成績表からAクラスの最高点を抽出する方法をご紹介します。
今回は、上の画像のような成績表から「Aクラスの最高点」を抽出します。【任意のセル(例:F3)】を選択し、『A』という条件を入力しておきます。
DMAX関数を入力します。【任意のセル(例:F6)】を選択し、『=DMAX(』と入力します。
データベースの引数を設定します。「=DMAX(」に続いて、『B3:D16,』と入力します。
フィールドの引数を設定します。最高点を抽出するので「点数」の見出しがフィールドの引数になります。「B3:D16,」に続いて『D3,』と入力します。
条件の引数を設定します。あらかじめ入力しておいたF2セルとF3セルを条件として入力します。「D3,」に続いて『F2:F3)』と入力、【Enter】キーを押します。
最高値が抽出され、「Aクラスの最高点」がF6セルに表示されました。これでDMAX関数を使って、クラスの最高点を求めることが出来ました。
完全一致条件を指定する方法
DMAX関数で完全一致条件を指定する方法についてご紹介します。
正しくデータを抽出できない現象について
DMAX関数を使って、正しくデータを抽出できない場合は、条件を部分一致条件で検索している可能性があります。
上の画像は、部分一致条件で条件設定した例です。
部分一致条件とは、検索語を含んでいる全てのデータから検索してデータを抽出するという条件設定方法です。
上の画像は、検索条件のG4セルに「パソコン」と入力した結果ですが、赤い矢印で示した「パソコン(デスクトップ)」の売り上げがG7セルに最高売り上げとして抽出されています。「パソコン(デスクトップ)」にも「パソコン」という文字が含まれているからです。
「パソコン」そのもののデータから抽出したい場合は、完全一致条件で条件を設定しましょう。
完全一致条件の設定方法
DMAX関数で完全一致条件を設定する方法については、以下の通りです。
上の画像では、あらかじめG7のセルに「リストから最高売り上げ金額を抽出する」というDMAX関数が入力されています。DMAX関数の入力方法については、上記「基本的な操作方法」セクションを参考にしてください。
次に完全一致条件を設定します。
完全一致条件の書式は「="=検索したい言葉"」です。
【条件を入力する任意のセル(例:G4)】を選択して、『="=パソコン"』と入力し、Enterを押します。
G4セルに入力した完全一致条件の表記が「="=パソコン"」から「=パソコン」に変化すれば、問題なく完全一致条件が設定できています。
G7セルの最高売り上げの金額も「パソコン」の金額に変わりました。
これで商品名が「パソコン」に完全一致するデータから最高金額を抽出することが出来ました。
最新の日付を抽出する方法
データリストの中から最新の日付を抽出する方法について、DMAX関数を使う方法と、MAX関数を使う方法の2通りをご紹介します。
DMAX関数を使って最新の日付を抽出する方法
DMAX関数を使って最新の日付を抽出する方法については、以下の通りです。
DMAX関数を入力します。
今回はDMAX関数を使って、上の画像のような表から「パソコン(デスクトップ)」の売り上げがあった最新に日付を抽出してみます。
【任意のセル(例:G8)】を選択し、『=DMAX(』と入力します。
データベースの引数を入力します。
「=DMAX(」に続けて、『B2:E14,』と入力します。
フィールドの引数を入力します。
最新に日付を抽出したいので、リストの「日付」の見出しをフィールドの引数として設定します。
「B2:E14,」に続けて、『B2,』と入力します。
条件の引数を入力します。
「B2,」に続けて、『G2:G3)』と入力し、Enterを押します。
これで、DMAX関数を使って「パソコン(デスクトップ)」の売り上げがあった最新の日付を抽出することが出来ました。
MAX関数を使って最新の日付を抽出する方法
MAX関数でもDMAX関数と同様に、最新の日付を抽出することが出来ます。
MAX関数の書式は、「=MAX(数値1,[数値2],…)」です。
例えば、上の画像ではMAX関数を使って、D3セルに最新の日付が表示されています。
MAX関数を使って、最新の日付を抽出する方法については、以下の記事「日付の最大値を求める」セクションを参考にしてください。
離れたセルで範囲指定できる?
DMAX関数で、離れたセルを範囲指定して最大値を抽出することはできません。
ただし、2つ以上の複数条件を設定し、対象範囲の最大値を抽出することはできます。
DMAX関数で複数条件を指定する場合は、上の画像のように条件を入力しておきます。
項目とデータを横に並べておきましょう。
今回は上の画像の条件を使って、「Aクラスの女性」の最高点を抽出してみます。
DMAX関数を入力します。
【任意のセル(例:F6)】を選択し、『=DMAX(』と入力します。
データベースの引数を入力します。
「=DMAX(」に続けて、『B3:D16,』と入力します。
フィールドの引数を入力します。
表内の「点数」の項目をフィールドの引数に設定したいので「B3:D16,」に続けて『D3,』と入力します。
条件の引数を入力します。
「D3,」に続けて『F2:G3)』と入力し、Enterを押します。
表内から「Aクラスの女性」の最高点が抽出されました。
これで、DMAX関数を使って2つ以上の複数条件を設定し、対象範囲の最大値を抽出することが出来ました。