エクセルでデータを管理していると、「一番大きい数値はどれか」「一番小さい売上はどのデータか」を素早く把握したい場面はとても多いでしょう。
最大値・最小値を求めることは、データ分析の基本中の基本ですが、MAX・MIN関数の基本操作だけでなく、最大値のセルを色付けして目立たせる方法・0を除いた最小値の求め方・グラフの縦軸の最大値変更まで知っておくと、業務での活用の幅が一気に広がります。
この記事では、エクセルで最大値・最小値を求める方法(MAX・MIN関数・色付け・検索・グラフの最大値変更・0を除く)について、基本の関数操作から応用テクニックまで、イメージ図を交えながら丁寧に解説していきます。
ぜひ参考にしてみてください。
【結論】エクセルで最大値・最小値を求めるにはMAX関数・MIN関数が基本で、条件付きの最大値にはMAXIFS・MINIFS関数を使い、最大値セルの色付けには条件付き書式を組み合わせるのが最も効果的
それではまず、エクセルで最大値・最小値を求める方法の全体像と、目的別に使うべき手段の結論について解説していきます。
最大値・最小値の取得には状況に応じてさまざまな方法があります。
最大値・最小値を求める方法の目的別早見表
単純な最大値・最小値を求めたい → MAX関数・MIN関数を使う。最もシンプルで高速な方法。
条件付きで最大値・最小値を求めたい → MAXIFS関数・MINIFS関数(Excel2019以降)またはMAX+IF配列数式を使う。
最大値・最小値のあるセルを色付けしたい → 条件付き書式でMAX関数・MIN関数を数式として設定する。
最大値・最小値を持つ行のデータを検索したい → MATCH関数・INDEX関数またはVLOOKUP関数と組み合わせる。
0を除いた最小値を求めたい → MINIFS関数またはMIN+IF配列数式で0より大きい値の最小値を抽出する。
グラフの縦軸の最大値・最小値を変更したい → グラフの軸をダブルクリックして「軸の書式設定」から最大値・最小値を手動で指定する。
これらを組み合わせることで、データの全体像を素早く把握し、重要な値を視覚的に強調した管理表を作ることができます。
以下のイメージ図は、MAX関数とMIN関数をセルに入力して最大値・最小値を求めている操作例を示しています。

MAX関数・MIN関数の基本書式と使い方
MAX関数はセル範囲の中から最大値を、MIN関数は最小値を返す最も基本的な統計関数です。
書式は非常にシンプルで、引数に対象となるセル範囲を指定するだけです。
MAX関数・MIN関数の基本書式
=MAX(数値1, [数値2], …)
=MIN(数値1, [数値2], …)
使用例
=MAX(B2:B11) → B2からB11の中の最大値を返す
=MIN(B2:B11) → B2からB11の中の最小値を返す
=MAX(B2:B11,D2:D11) → 複数の範囲をまたいだ最大値を返す
=MAX(100,200,150) → 直接数値を指定することも可能(この場合200が返る)
引数に複数のセル範囲をカンマで区切って指定することで、離れた範囲の最大値・最小値もまとめて取得できます。
また、MAX関数・MIN関数はテキスト文字列や空白セルを無視して計算するため、数値以外のデータが混在していても問題ありません。
LARGE・SMALL関数で2番目・3番目の値を取得する
最大値・最小値だけでなく、「2番目に大きい値」「3番目に小さい値」を取得したい場合はLARGE関数・SMALL関数を使います。
ランキング管理や上位N件の抽出など、より柔軟な集計が必要な場面で活躍します。
LARGE関数・SMALL関数の書式と使用例
=LARGE(配列, 順位) → 指定した順位の大きい値を返す
=SMALL(配列, 順位) → 指定した順位の小さい値を返す
使用例
=LARGE(B2:B11,1) → 最大値(MAX関数と同じ)
=LARGE(B2:B11,2) → 2番目に大きい値
=LARGE(B2:B11,3) → 3番目に大きい値
=SMALL(B2:B11,1) → 最小値(MIN関数と同じ)
=SMALL(B2:B11,2) → 2番目に小さい値
LARGE関数・SMALL関数は、売上ランキングの上位3社を抽出したり、テストの下位成績を確認したりする場面で特に便利です。
MAXIFS・MINIFS関数で条件付き最大値・最小値を求める
特定の条件を満たすデータの中から最大値・最小値を求めたい場合は、Excel2019以降で使えるMAXIFS関数・MINIFS関数が最もシンプルな解決策です。
MAXIFS・MINIFS関数の書式と使用例
=MAXIFS(最大値範囲, 条件範囲1, 条件1, …)
=MINIFS(最小値範囲, 条件範囲1, 条件1, …)
使用例(A列が「東京」の行の売上の最大値)
=MAXIFS(B2:B11,A2:A11,”東京”)
使用例(A列が「東京」かつC列が「1月」の最大値)
=MAXIFS(B2:B11,A2:A11,”東京”,C2:C11,”1月”)
Excel2016以前の場合はMAX+IF配列数式で代用する
=MAX(IF(A2:A11=”東京”,B2:B11)) → Ctrl+Shift+Enterで確定(配列数式)
MAXIFS・MINIFS関数はExcel365・Excel2019以降で使える関数のため、古いバージョンのエクセルでは代わりにMAX+IFの配列数式を使う必要があります。
最大値・最小値のセルを色付けする条件付き書式の設定方法
続いては、最大値や最小値を持つセルを自動的に色付けして目立たせる、条件付き書式の設定方法を確認していきます。
色分けによる視覚化は、大量データの中から重要な値を瞬時に把握するために非常に効果的です。
条件付き書式でMAX関数を使って最大値セルを色付けする
条件付き書式にMAX関数を組み込むことで、データが変わっても常に最大値のセルが自動的に色付けされる仕組みを作れます。
最大値セルを自動色付けする条件付き書式の設定手順
① 色付けしたいセル範囲(例 B2:B11)を選択する
②「ホーム」タブ →「条件付き書式」→「新しいルール」をクリックする
③「数式を使用して、書式設定するセルを決定する」を選択する
④ 数式欄に以下を入力する
=B2=MAX($B$2:$B$11)
⑤「書式」ボタンをクリックして「塗りつぶし」タブで強調色(赤・オレンジなど)を選ぶ
⑥ OKをクリックして完了する
→ B列の最大値を持つセルだけが自動的に色付けされる
最小値の色付け(緑や青などで視覚的に区別する場合)
=B2=MIN($B$2:$B$11)
数式中のMAX範囲は絶対参照($B$2:$B$11)にしておくことが重要です。
相対参照のままにすると、条件が正しく機能しないことがあります。
以下のイメージ図は、条件付き書式で最大値セルを色付けする設定ダイアログを示しています。
条件付き書式 — 最大値セルの自動色付け設定
範囲内のデータが変わっても常に最大値のセルが自動で色付けされる
最小値の色付けは数式を「=B2=MIN($B$2:$B$11)」に変更して別ルールを追加する
「上位/下位ルール」を使った簡易的な最大値ハイライト
条件付き書式には「上位10項目」「下位10%」など、ランク上位・下位のセルを簡単に色付けできる専用のルールも用意されています。
「最大値1つだけ」ではなく「上位3件」や「上位10%」のように範囲を設定したい場合に便利です。
上位/下位ルールで上位の値を色付けする手順
① セル範囲を選択する
②「ホーム」タブ →「条件付き書式」→「上位/下位ルール」→「上位10項目」をクリックする
③ 表示されたダイアログで件数を「1」に変更して書式(色)を選択する → OK
→ 最大値1件だけが色付けされる(数値が変わっても自動更新される)
下位の値を色付けする場合
「上位/下位ルール」→「下位10項目」で同様に操作する
この方法はMAX関数の数式入力が不要なため、操作に慣れていない方でも直感的に設定できる点が大きなメリットです。
最大値・最小値を含む行全体を色付けする方法
最大値のセルだけでなく、そのセルが含まれる行全体を色付けしたい場面もあります。
行全体を色付けするには、条件付き書式の適用範囲を行全体に広げ、数式の列参照を絶対参照にします。
最大値の行全体を色付けする設定
① 色付けしたいデータ範囲の行全体(例 A2:D11)を選択する
②「条件付き書式」→「新しいルール」→「数式を使用して〜」を選択する
③ 数式欄に以下を入力する
=$B2=MAX($B$2:$B$11)
→ B列の値が最大値である行のA〜D列すべてが色付けされる
数式のポイント
「$B2」のように列だけを絶対参照($B)・行は相対参照(2)にすることで行全体に正しく適用される
行全体の色付けを使うことで、最大値を持つレコードが表の中でひと目でわかるようになり、データの把握スピードが格段に向上します。
最大値・最小値の場所を検索する方法と0を除いた最小値の求め方
続いては、最大値・最小値を持つセルの位置(行番号や対応するデータ)を検索する方法と、データに0が含まれる場合に0を除いた真の最小値を求める方法を確認していきます。
実務では「最大値は何番目のデータか」「どの担当者の売上が最大か」を知りたい場面が多くあります。
MATCH関数とINDEX関数で最大値の位置と対応データを取得する
MAX関数で最大値はわかっても、「その最大値を持つのはどの行のデータか」を知るにはMATCH関数とINDEX関数の組み合わせが効果的です。
最大値を持つ行のデータをINDEX+MATCH関数で取得する
最大値の行番号を取得する
=MATCH(MAX(B2:B11),B2:B11,0)
→ B列の最大値が何行目にあるかを返す
最大値に対応するA列のデータ(担当者名など)を取得する
=INDEX(A2:A11,MATCH(MAX(B2:B11),B2:B11,0))
→ 最大値を持つ行のA列の値(担当者名)を返す
使用例(最大売上を達成した担当者名を表示する)
=INDEX(A2:A11,MATCH(MAX(B2:B11),B2:B11,0)) → 「山田」など担当者名が返る
INDEX+MATCH関数の組み合わせはVLOOKUPより柔軟で、左側の列も参照できるため、最大値・最小値の検索に非常に適した方法です。
最小値の場合はMAXをMINに置き換えるだけで同様に機能します。
0を除いた最小値をMINIFS関数・配列数式で求める方法
データに「0」が含まれている場合、通常のMIN関数では0が最小値として返されてしまいます。
「売上が0の月は除外して、実際に売上があった月の最小値を知りたい」という場面でよく発生する問題です。
0を除いた最小値を求める方法
方法① MINIFS関数(Excel2019以降)
=MINIFS(B2:B11,B2:B11,”>”&0)
→ B列の値が0より大きいデータの中の最小値を返す
方法② MIN+IF配列数式(Excel2016以前でも使える)
=MIN(IF(B2:B11>0,B2:B11))
→ Ctrl+Shift+Enterで確定する(配列数式)
方法③ SMALL関数で0以外の最小値を取得する
=SMALL(B2:B11,COUNTIF(B2:B11,0)+1)
→ 0の個数分を順位としてSMALL関数でスキップして最小値を取得する
最も汎用的なのはMINIFS関数で「>0」の条件を指定する方法です。
Excel2016以前の環境ではMIN+IF配列数式を使い、必ずCtrl+Shift+Enterで確定することを忘れないようにしましょう。
以下のイメージ図は、MINIFS関数を使って0を除いた最小値を求めている操作例を示しています。
Microsoft Excel — MINIFS関数で0を除いた最小値を求める
数式
データ
fx
=MINIFS(B2:B11,B2:B11,”>”&0)
← 0を除いた最小値を取得
最大値・最小値が複数ある場合の対処法
データの中に同じ最大値が2つ以上ある場合、MATCH関数は最初に一致した位置だけを返します。
すべての最大値の位置を取得したい場合は、COUNTIF関数を使って同一値の個数を確認するか、フィルター機能で最大値に等しいデータを絞り込む方法が実用的です。
最大値の個数を確認する数式
=COUNTIF(B2:B11,MAX(B2:B11))
→ 最大値と同じ値が何個あるかを返す
→ 結果が「1」なら最大値はひとつ、「2」以上なら複数存在する
最大値が複数存在する可能性がある場合は、COUNTIF関数で事前に確認してから分析を進める
習慣をつけておくと、分析の精度が上がります。
グラフの最大値・最小値(軸の上限・下限)を変更する方法
続いては、エクセルのグラフで縦軸(数値軸)の最大値・最小値を手動で変更して、より見やすいグラフを作成する方法を確認していきます。
グラフの軸の範囲を適切に設定することで、データの変化が視覚的にわかりやすくなります。
グラフの縦軸の最大値・最小値を手動で設定する手順
エクセルのグラフでは、縦軸の最大値・最小値はデフォルトで自動設定されます。
しかし自動設定では、データの差が小さいときに変動が誇張されて見えたり、比較したいグラフ同士で軸の範囲が異なって見づらくなったりすることがあります。
グラフの縦軸の最大値・最小値を手動設定する手順
① グラフの縦軸(数値が表示されている軸の数字部分)をダブルクリックする
② 画面右側に「軸の書式設定」パネルが開く
③「軸のオプション」を展開する
④「最小値」の欄に変更したい最小値を入力する(例 0)
⑤「最大値」の欄に変更したい最大値を入力する(例 500000)
⑥ Enterキーを押すかパネルを閉じると設定が反映される
「自動」に戻す場合
入力した数値を削除して「自動」と表示される状態に戻すと自動計算に戻る
グラフの軸の最大値・最小値を手動設定することで、複数のグラフを並べて比較する際に縦軸の範囲を統一して公平な比較を実現できます。
グラフに最大値・最小値のデータラベルだけを表示するテクニック
折れ線グラフや棒グラフに全データポイントのデータラベルを表示すると見づらくなりますが、最大値と最小値だけラベルを表示すると非常に見やすいグラフになります。
この場合、元データとは別に「最大値・最小値のみの系列データ」を作成して補助系列として追加する方法が有効です。
グラフに最大値・最小値のラベルだけを表示する方法
① 元データの隣に「MAX用」列と「MIN用」列を追加する
② MAX用列に以下の数式を入力してオートフィルする(先頭セルB2に入力して下へ)
=IF(A2=MAX($A$2:$A$11),A2,NA())
→ 最大値のセルだけ値を返し、それ以外はNA()(エラー)を返す
③ MIN用列も同様にNA()を使って最小値のみ表示する数式を入力する
④ この補助列をグラフの系列に追加してデータラベルを表示する
→ NA()のセルはグラフに表示されないため、最大値・最小値のみにラベルが表示される
NA()関数を使うことで、グラフ上で特定の点だけにラベルを表示するという高度なテクニックが実現できます。
最大値は赤・最小値は青のように色分けしたマーカーを使うとさらに視覚的にわかりやすいグラフに仕上がります。
最大値・最小値を使ったデータ正規化のテクニック
MAX・MIN関数を応用したテクニックとして、異なる単位・スケールのデータを0から1の範囲に変換する「最小最大正規化(Min-Max Normalization)」があります。
複数の指標を同じスケールで比較したい場面で非常に便利な手法です。
最小最大正規化の計算式
正規化した値 = (元の値 – 最小値) / (最大値 – 最小値)
エクセルの数式(A2セルの値を正規化する場合)
=(A2-MIN($A$2:$A$11))/(MAX($A$2:$A$11)-MIN($A$2:$A$11))
→ 最小値のセルは0、最大値のセルは1、他の値は0〜1の間の値に変換される
オートフィルで全行に適用して一括正規化できる
| 関数・機能 | 主な用途 | ポイント |
|---|---|---|
| MAX・MIN関数 | 範囲内の最大値・最小値を取得 | 最も基本的。文字列・空白は無視 |
| MAXIFS・MINIFS関数 | 条件付き最大値・最小値の取得 | Excel2019以降。0除外にも対応 |
| LARGE・SMALL関数 | 2番目・3番目など順位指定で取得 | ランキング管理に便利 |
| 条件付き書式+MAX・MIN | 最大値・最小値セルの自動色付け | 絶対参照を使うことが重要 |
| INDEX+MATCH+MAX・MIN | 最大値・最小値の行データを検索 | 担当者名や日付の取得に有用 |
| 軸の書式設定 | グラフ縦軸の最大値・最小値を変更 | 軸をダブルクリックして設定 |
この表を参照することで、目的に応じた最適な方法をすぐに選択できます。
まとめ エクセルで最大値・最小値の出し方や色付け・検索・グラフの最大値変更・0を除く
この記事では、エクセルで最大値・最小値を求める方法(MAX・MIN関数・色付け・検索・グラフの最大値変更・0を除く)について、基本の関数操作から応用テクニックまで幅広く解説しました。
最大値・最小値の基本はMAX関数・MIN関数で、条件付きの取得にはMAXIFS・MINIFS関数が最もシンプルな解決策となります。
最大値セルの色付けには条件付き書式にMAX関数を組み込み、行全体を色付けする場合は列のみ絶対参照にした数式を使うことがポイントです。
0を除いた最小値はMINIFS関数で「>0」の条件を指定するか、MIN+IF配列数式で対応し、グラフの軸の最大値・最小値は軸をダブルクリックして「軸の書式設定」から手動で変更できます。
MAX・MIN関数を中心に、条件付き書式・INDEX+MATCH・グラフ設定を組み合わせることで、データの最大値・最小値を多角的に活用した見やすい管理表が完成します。
今回の内容を活用して、エクセルでのデータ分析をよりスムーズに進めていただけますと幸いです。