MAX関数・MIN関数の使い方としくみ|草野球成績管理表で最多安打試合・最少失点試合を探す例で解説

関数の使い方

範囲の中から「いちばん大きい数値」「いちばん小さい数値」を取り出したいとき使うのが、MAX関数MIN関数です。草野球の成績管理表でシーズン最多安打試合・最少失点試合を探す場面を例に、初心者向けに丁寧に説明します。

MAX関数・MIN関数とは

📝 MAX・MINの役割(一言でいうと)

指定した範囲の中から、MAXは「いちばん大きい数値」を、MINは「いちばん小さい数値」を1つだけ返す関数です。成績管理表では「シーズン最多安打の試合は何本だったか」「最少失点の試合はどれだけ抑えたか」といった、記録のトップを探す場面で登場します。

基本の書式はこうです。

=MAX(範囲)
=MIN(範囲)

SUMと同じように、範囲には「D2:D30」のようなセル範囲を指定します。

成績管理表での実例:最多安打試合・最少失点試合を探す

大阪グーニーズの個人成績シートでは、各試合の安打数を1行ずつ記録しています。D列に各試合の安打数、投手成績シートのE列に各試合の失点数が入っているとします。

試合日 対戦相手 安打 失点
4/6 ○○ファイターズ 2 5
4/13 △△ベアーズ 5 1
4/20 □□イーグルス 3 0

このD列(安打)の中からシーズン最多安打の試合を、E列(失点)の中から最少失点の試合を探したいとき、式はこうなります。

✅ 最多安打・最少失点を求める式
=MAX(D2:D30)   (最多安打)
=MIN(E2:E30)   (最少失点)

これで「D2セルからD30セルまでの中でいちばん大きい数値」「E2セルからE30セルまでの中でいちばん小さい数値」がそれぞれ求まります。試合が増えるたびに範囲内へ行を追加していけば、記録が更新されるたびに値も自動で追随してくれます。

シートのどこを見て、どこに何が返るのか。下の図で確認してみましょう。

MAX関数・MIN関数の使い方:D列の安打数から最多の5を、E列の失点から最少の0を求める図解 MAX関数・MIN関数の使い方 範囲の中から、いちばん大きい数値・いちばん小さい数値を1つだけ取り出す fx =MAX(D2:D30) 最多安打 fx =MIN(E2:E30) 最少失点 A B C D E 1 試合日 対戦相手 安打 失点 2 4/6 ○○ファイターズ 2 5 3 4/13 △△ベアーズ 5 1 4 4/20 □□イーグルス 3 0 …(30行目まで続く) 最多安打 最少失点 MAX・MINの結果(集計欄) 5 0 ※C列は省略しています。集計欄は参照範囲の外側に置きます 青い破線の範囲を上から順に見比べて MAXはいちばん大きい値、 MINはいちばん小さい値を返します =MAX(範囲) =MIN(範囲) 指定した範囲の中から、MAXはいちばん大きい数値を、MINはいちばん小さい数値を1つだけ返します。 例:=MAX(D2:D30) → 安打がいちばん多い試合の本数/=MIN(E2:E30) → 失点がいちばん少ない試合の点数 大阪グーニーズ データ解説
MAX関数・MIN関数で最多安打・最少失点を求める
STEP 1
結果を表示したいセルを選択する

最多安打・最少失点を表示したいセル(例:個人成績シートの集計欄)をクリックして選択します。

STEP 2
「=MAX(」または「=MIN(」と入力し、対象範囲をドラッグで選択する

マウスで対象の列をドラッグすると、自動で「D2:D30」のような範囲が入力されます。

STEP 3
「)」で閉じてEnterキーで確定する

式を確定すると、すぐに最大値または最小値がセルに表示されます。

しくみを理解する:MAX・MINは何をしているのか

📝 MAX・MINの内部動作

MAX関数もMIN関数も、やっていることはとてもシンプルです。範囲内のセルを先頭から1つずつ見ていき、「今までで見た中でいちばん大きい(小さい)数値」を仮に記憶しておき、次のセルの値と比較して、より大きければ(小さければ)記憶している値を更新する、という作業を最後のセルまで繰り返しているだけです。

  • 空白セルは無視される(比較の対象に加わらない)
  • 文字列が入っているセルも無視される(数値ではないため比較できない)
  • 範囲内の数値が1つも無い場合、MAXは0を、MINも0を返す(記憶している値が更新されないまま終わるため)

よくあるミス:期待した値と違う原因

⚠️ 原因1:未出場の試合が0点として混ざっている

出場していない試合の安打欄に「0」を手入力してしまうと、MIN関数はそれを「安打0の試合」として拾ってしまいます。未出場の試合は数値の0ではなく空白にしておくのが安全です。

未出場の試合を含む4試合ぶんに絞って、安打欄に「0」を入れた場合と空白のままにした場合で、MINの結果がどう変わるのかを比べてみましょう。

未出場の試合に0を入力するとMINが0を返し、空白にしておくと本来の最少安打2を返すことを比較した図解 MIN関数のつまずきポイント 未出場の試合に「0」を入力すると、MINがその0を拾ってしまう NG 未出場に「0」を入力 fx =MIN(D2:D5) A D 1 試合日 安打 2 4/6 2 3 4/13 5 4 4/20 3 5 4/27 0 未出場なのに 0が入力されている MINの結果 0 MINが未出場の0を拾ってしまい、 結果が0になってしまいます OK 未出場は空白のまま fx =MIN(D2:D5) A D 1 試合日 安打 2 4/6 2 3 4/13 5 4 4/20 3 5 4/27 空白のまま (比較されない) MINの結果 2 空白は比較の対象から外れるので、 出場した試合の最少安打「2」が返ります 未出場の試合は「0」ではなく、空白のままにしておきましょう MIN関数は空白セルを無視するため、実際に出場した試合だけで最少の値を比較できます。 大阪グーニーズ データ解説
未出場の試合に「0」を入れた場合と空白にした場合で、MINの結果はこう変わる
⚠️ 原因2:範囲の中に別の集計セルが紛れている

安打数の列の途中に「シーズン合計」など集計用のセルを挟んでしまうと、MAXがその合計値まで最大値として拾ってしまうことがあります。集計欄は範囲の外側にまとめて配置するようにしましょう。

✅ この記事のまとめ
  • MAXは「範囲内でいちばん大きい数値」、MINは「いちばん小さい数値」を返す関数
  • 内部では1セルずつ比較しながら記憶を更新するという単純な処理を繰り返している
  • 未出場を0で入力していないか、集計セルが範囲に紛れていないかが「値がおかしい」の2大原因

次回予告

次回のテーマは「ROUND / ROUNDDOWN / ROUNDUP関数」です。四捨五入・切り捨て・切り上げの違いと桁指定の考え方を、打率を3桁表示に揃える例を使って解説していきます。

▶︎ 次回:ROUND関数の使い方としくみ

コメント

タイトルとURLをコピーしました