目次
このチュートリアルでは、Excelで最高値を求め、ワークシートで最大の数値を強調する方法を示す多くの数式例でMAX関数を説明します。
MAXは、Excelの関数の中で最もわかりやすく、使いやすい関数の1つです。 しかし、この関数にはいくつかのコツがあり、それを知ることで大きなアドバンテージとなります。 例えば、条件付きのMAX関数はどう使うのか、絶対最大値はどう取り出すのか。 このチュートリアルでは、これらのタスクやその他の関連タスクに対する複数の解決策をご紹介しています。
エクセルMAX関数
ExcelのMAX関数は、指定したデータセットの中で最も高い値を返します。
構文は以下の通りです。
MAX(番号1,[番号2], ...)どこ 番号 は、数値、配列、名前付き範囲、数値を含むセルや範囲への参照で表すことができる。
番号1 が必要です。 ナンバーツー 以降の引数は任意である。
MAX関数は、Office 365、Excel 2019、Excel 2016、Excel 2013、Excel 2010、Excel 2007以下のすべてのバージョンのExcelで利用可能です。
エクセルでMAXの計算式を作成する方法
最も単純な MAX 式を作るには、次のように、引数のリストに直接数字を入力します。
=MAX(1, 2, 3)
実際には、数値が「ハードコード」されるケースはかなり稀で、ほとんどの場合、範囲とセルを扱うことになります。
範囲内の最高値を求めるMax式を構築する最も早い方法は、次の通りです。
- セルで、次のように入力します。 =MAX(
- マウスで数値の範囲を選択する。
- 閉じる括弧を入力します。
- Enterキーを押して、計算式を完成させます。
例えば、範囲A1:A6で最大の値を算出する場合、以下のような式になります。
=MAX(A1:A6)
になっている場合、その数字は れんぞく の行や列(この例のように)を使って、Excel に自動的に Max の数式を作らせることができます。 その方法は次のとおりです。
- 数値の入ったセルを選択します。
- について ホーム タブで フォーマット グループをクリックします。 オートサム と選びます。 マックス をクリックします。 オートサム > マックス について 計算式 のタブをクリックします。 機能 図書館グループ。 )
これは、選択した範囲の下のセルにすぐに使える数式を挿入するので、選択した数値のリストの下に少なくとも1つの空白のセルがあることを確認してください。
MAX機能について知っておくべき5つのこと
Max の数式をワークシートでうまく使うために、これらの簡単な事実を覚えておいてください。
- 現在のバージョンの Excel では、MAX の数式は最大で 255 個の引数を受け取ることができます。
- 引数が単一の数値を含まない場合、MAX関数は0を返します。
- 引数に1つ以上のエラー値が含まれる場合、エラーが返される。
- 空白のセルは無視されます。
- 引数リストで直接与えられた数値の論理値およびテキスト表現が処理されます(TRUEは1、FALSEは0として評価されます)。 リファレンスでは、論理値およびテキスト値は無視されます。
エクセルでMAX関数を使う方法-計算式の例
以下に、Excel MAX 関数の典型的な使い方をいくつか紹介します。 多くの場合、同じタスクに対していくつかの異なるソリューションがあるので、すべての公式をテストして、データ タイプに最適なものを選択することをお勧めします。
グループ内の最大値を求める方法
数値のグループの中で最大の数値を取り出すには、そのグループを範囲指定でMAX関数に与えます。 範囲には、行と列をいくつでも含めることができます。 たとえば、範囲C2:E7で最大の数値を取り出すには、次の簡単な式を使用します。
=MAX(C2:E7)
隣接しないセルや範囲内の最高値を検索する
連続しないセルや範囲に対して MAX の数式を作成するには、個々のセルや範囲への参照を含 める必要があります。 次のステップは、それをすばやく完璧に行うための手助けになります。
- セルにMaxの数式を入力し始める。
- 開始括弧を入力したら、Ctrlキーを押しながら、シート内のセルと範囲を選択します。
- 最後の項目を選択した後、Ctrlを離し、閉じ括弧を入力します。
- Enterを押す。
Excelは自動的に適切な構文を使用し、次のような数式が得られます。
=max(c5:e5, c9:e9)
以下のスクリーンショットに示すように、数式は5行目と9行目から小計の最大値を返します。
Excelで最大(最新)日付を取得する方法
Excelの内部システムでは、日付は通し番号以外の何物でもないので、MAX関数で平気で処理されるのです。
例えば、C2:C7で最新の納期を求めるには、数字に使うようないつものMax式を作る。
=MAX(C2:C7)
エクセルでMAX関数を条件付きで使う
条件によって最大値を求める場合、いくつかの計算式がありますが、すべての計算式が同じ結果を返すことを確認するために、同じデータセットでテストします。
課題 : B2:B15にリストされた商品とC2:C15の販売数で、F1に入力された特定の商品の最高販売額を見つけることを目指します(本項末尾のスクリーンショットをご参照ください)。
エクセル MAX IF式
Excel 2000からExcel 2019のすべてのバージョンで動作する数式をお探しの場合は、IF関数を使って条件をテストし、結果の配列をMAX関数に渡してください。
=max(if(b2:b15=f1, c2:c15))
数式を動作させるには、Ctrl + Shift + Enter を同時に押して、配列数式として入力する必要があります。 すべてが正しく行われると、Excel は数式を {curly braces} で囲み、これは配列数式であることを視覚的に示すものです。
また、1つの数式で複数の条件を評価することも可能で、次のチュートリアルでは、その方法を紹介しています:複数の条件を持つMAX IF。
非配列 MAX IF 式
ワークシートで配列式を使うのが嫌なら、MAXと配列をネイティブに処理するSUMPRODUCT関数を組み合わせればいい。
=sumproduct(max((b2:b15=f1)*(c2:c15)))となります。
詳しくは、MAX IF without arrayをご覧ください。
MAXIFS機能
Excel 2019およびExcel for Office 365では、MAXIFSという特殊な関数があり、最大126の条件で最高値を求めることができるようになっています。
今回の場合、条件は1つだけなので、数式は次のようにシンプルになります。
=maxifs(c2:c15, b2:b15, f1)
構文の詳細な説明は、Excel MAXIFS with formula examples を参照してください。
以下のスクリーンショットは、3つの数式がすべて動作している様子を示しています。
ゼロを無視した最大値の取得
ゼロを除外するには、「not equal to」論理演算子を使い、MAXIFSの条件かMAX IFの論理テストに「0」という式を入れる。
お分かりのように、この条件をテストすることは、以下の場合にのみ意味があります。 負の数 正の数では、どんな正の数でも0より大きいので、このチェックは不要です。
試しに、C2:C7の範囲で最も小さい割引額を探してみましょう。 すべての割引は負の数で表されるので、最も小さい割引は実際には最も大きい値です。
MAX IF
この配列式は、必ずCtrl + Shift + Enterキーを押して正しく完成させてください。
=max(if(c2:c70, c2:c7))
MAXIFS
普通の数式で、普通のEnterキー操作で十分です。
=MAXIFS(C2:C7,C2:C7,"0")
誤差を無視した最高値の検索
さまざまな計算式によって駆動される大量のデータを扱う場合、計算式の一部がエラーとなり、MAX の計算式もエラーを返す可能性があります。
回避策として、MAX IF と ISERROR を併用することができます。 範囲 A1:B5 を検索する場合、数式は次のような形になります。
=max(if(iserror(a1:b5)), "", a1:b5))
数式を簡単にするために、IF ISERRORの組み合わせの代わりにIFERROR関数を使用します。 これにより、論理も少し分かりやすくなります。A1:B5にエラーがある場合、空文字列('')に置き換え、範囲内の最大値を取得するようにします。
=max(iferror(a1:b5, ""))
ただし、配列の式としてしか機能しないので、Ctrl + Shift + Enterキーを押すのを忘れないようにする必要があります。
Excel 2019およびExcel for Office 356では、データセットに少なくとも1つの正の数またはゼロの値が含まれていれば、MAXIFS関数が解決策になります。
=MAXIFS(A1:B5,A1:B5,">=0")
この式は「0以上」という条件で最大値を探すので、負の数だけで構成されるデータセットではうまくいかない。
このような制限はよくないので、よりよい解決策が必要であることは明らかです。 多くの演算を行うことができ、エラー値を無視できるAGGREGATE関数は、完璧に適合しています。
=aggregate(4, 6, a1:b5)
第1引数の数字4はMAX関数、第2引数の数字6は「エラー無視」オプション、A1:B5はターゲット範囲を示します。
完璧な状況下では、3つの数式はすべて同じ結果を返します。
Excelで絶対最大値を求める方法
正負の数の範囲を扱うとき、符号に関係なく最大の絶対値を求めたいことがある。
最初に思いつくのは、ABS関数を使って範囲内のすべての数値の絶対値を取得し、それをMAXに与えることです。
{=MAX(ABS() レンジ ))}これは配列式なので、Ctrl + Shift + Enterのショートカットで確定するのを忘れないように。 また、数値でのみ動作し、数値以外のデータの場合はエラーになるのも注意点です。
この方式に満足できないなら、もっと実現可能なものを作ろう :)
最小値を求め、その符号を反転させたり無視したりして、他のすべての数値と一緒に評価したらどうでしょう。 そうです、これは通常の数式として完全に機能します。 おまけに、テキストの入力やエラーもうまく処理できます。
ソース番号をA1:B5とすると、計算式は次のようになります。
アレイ の数式を入力します(Ctrl + Shift + Enter で完了)。
=max(abs(a1:b5))
レギュラー の数式を入力します(Enterで完了)。
=max(max(a1:b5), -min(a1:b5))
または
=max(max(a1:b5), abs(min(a1:b5)))である。
下のスクリーンショットはその結果を示しています。
符号を保存した最大絶対値を返す
状況によっては、最大の絶対値を求める必要があるが、絶対値ではなく、元の符号で数値を返すことがある。
数値がセルA1:B5にあると仮定して、使用する数式は次のとおりです。
=IF(ABS(MAX(A1:B5))>ABS(MIN(A1:B5))), MAX(A1:B5), MIN(A1:B5))
一見複雑そうだが、理屈はいたって簡単だ。 まず、範囲内の最大値と最小値を求め、その絶対値を比較する。 絶対最大値が絶対最小値より大きければ最大値を、そうでなければ最小値を返す。 この式は絶対値ではなく元の値を返すので、符号情報は保持されることになる。
Excelで最大値を強調表示する方法
元のデータセットの中で最大の数値を特定したい場合、最も早い方法は、Excelの条件付き書式を使って強調することです。 以下の例では、2つの異なるシナリオを説明します。
範囲内の最高値を強調表示する
Microsoft Excelには、上位の値をフォーマットするためのルールがあらかじめ用意されており、このルールは私たちのニーズにぴったりです。 ここでは、このルールを適用するための手順を説明します。
- 数値の範囲(ここではC2:C7)を選択します。
- について ホーム タブで スタイル グループをクリックします。 条件付き書式>新ルール .
- での 新しい書式ルール ダイアログボックスで 上位または下位の値のみをフォーマットする .
- 下のペインで トップ をドロップダウン・リストから選択し、その隣のボックスに「1」と入力します(最大の値を含むセル1つだけを強調表示するという意味です)。
- をクリックします。 フォーマット ボタンを押し、希望の形式を選択する。
- OKを2回クリックして、両方のウィンドウを閉じます。
完了!選択した範囲の最高値が自動的にハイライトされます。 最高値が複数ある場合(重複)、Excelはそれらすべてをハイライトします。
各行の最大値を強調表示する
各行から最も高い値を目立たせるルールは組み込まれていないので、MAX式に基づいた独自のルールを設定する必要があります。 その方法は次のとおりです。
- 最大値をハイライトしたい行をすべて選択します (この例では C2:C7).
- について ホーム タブで スタイル グループをクリックします。 新ルール > 数式を使用して、どのセルをフォーマットするかを決定する .
- での この式が真である場合の値のフォーマット ボックスに、この数式を入力してください。
=c2=max($c2:$e2)です。
ここで、C2 は左端のセル、$C2:$E2 は最初の行の範囲です。 このルールを有効にするには、範囲内の列座標を必ず $ 記号でロックしてください。
- をクリックします。 フォーマット ボタンをクリックし、必要な形式を選択します。
- OKを2回クリックします。
ヒント 同じように、ハイライト表示することで 最高値 において 各段 最初の列の範囲に数式を書き、行の座標を固定することを除けば、手順はまったく同じです。 =c2=max(c$2:c$7)とする。
詳しくは、「数式ベースの条件付き書式ルールを作成する方法」をご覧ください。
Excel MAX関数が動作しない
MAXは、Excelの関数の中で最も使いやすい関数の一つです。 もし、予想に反してうまく動作しない場合は、以下のいずれかの問題である可能性が高いです。
MAX式が0を返す
通常のMAX関数で、指定した範囲より大きな数値があるにもかかわらず0を返す場合、それらの数値がテキストとしてフォーマットされている可能性があります。 特に、他の数式で駆動されたデータに対してMAX関数を実行した場合にその傾向があります。 これは、例えばISNUMBER関数で確認することができます。
=ISNUMBER(A1)
上記の数式がFALSEを返した場合、A1の値は数値ではありません。 意味は、MAXの数式ではなく、元のデータをトラブルシューティングする必要があります。
MAX式が#N/A、#VALUE、またはその他のエラーを返す
参照されているセルをよく確認してください。 参照されているセルのいずれかがエラーを含んでいる場合、MAX 式は同じエラーになります。 これを回避するには、すべてのエラーを無視して最大値を取得する方法を参照してください。
以上、エクセルで最大値を求める方法でした。 読んでくださってありがとうございました!また、ブログでお会いしましょう。
ダウンロード可能です。
Excel MAXのサンプルワークブック