実用テク
MAX・MIN・MAXIFS・MINIFS 完全ガイド
MAX・MIN・MAXIFS・MINIFS 完全ガイド
最大値・最小値を条件付きで取り出す
範囲の中で一番大きい数・一番小さい数を取り出す MAX/MIN は基本中の基本。さらに「特定の条件を満たす中での最大値」を求める MAXIFS/MINIFS まで、実務パターンをまとめて解説する。
GASとの関係:Math.max()・Math.min() + reduce() が相当
GASでは Math.max(...array) が MAX に相当します。条件付きは array.filter(...).reduce(...) で実装します。スプレッドシートで MAXIFS のロジックを確認してからGASに移植すると設計が早まります。
目次
MAX・MIN の基本
=MAX(A2:A100) // A2:A100の最大値
=MIN(A2:A100) // A2:A100の最小値
=MAX(A2, B2, C2) // 複数セルの最大値(範囲でなくても使える)
よく使う組み合わせ
| 数式 | 意味 |
|---|---|
| =MAX(A:A)-MIN(A:A) | 最大値と最小値の差(レンジ) |
| =A2=MAX($A$2:$A$100) | そのセルが最大値かどうか判定(TRUE/FALSE) |
| =RANK(A2,$A$2:$A$100) | 順位を返す(MAXが1位) |
MAXIFS・MINIFS — 条件付きで最大値・最小値を取る
SUMIFS の MAX/MIN 版です。「条件を満たす行の中で最大の値」が1関数で取れます。
=MAXIFS(最大値を探す範囲, 条件範囲1, 条件1, ...)
=MINIFS(最小値を探す範囲, 条件範囲1, 条件1, ...)
基本的な使い方
// 東京支店の売上最大値
=MAXIFS(C2:C, B2:B, "東京")
// 山田さんの最高スコア
=MAXIFS(D2:D, A2:A, "山田")
// 今月の最小発注数
=MINIFS(E2:E, B2:B, ">="&DATE(YEAR(TODAY()),MONTH(TODAY()),1),
B2:B, "<="&EOMONTH(TODAY(),0))
複数条件での MAXIFS
// 東京・第1四半期の売上最大値
=MAXIFS(C2:C, B2:B, "東京", D2:D, "Q1")
// A列が"完了"でかつ担当者が"田中"の行の最大金額
=MAXIFS(E2:E, A2:A, "完了", C2:C, "田中")
LARGE・SMALL — 2番目・3番目の値を取る
MAX/MINは1番だけですが、LARGE/SMALLはN番目まで取れます。
=LARGE(A2:A100, 1) // 最大値(MAX と同じ)
=LARGE(A2:A100, 2) // 2番目に大きい値
=LARGE(A2:A100, 3) // 3番目に大きい値
=SMALL(A2:A100, 1) // 最小値(MIN と同じ)
=SMALL(A2:A100, 2) // 2番目に小さい値
実務でよく使うパターン
パターン1:最大値の行を強調表示
条件付き書式で「数式を使用」を選び、下記を入れると最大値の行が色付きになります。
// A列が最大値の行を全体色付け($A2 で列を固定・行は相対参照)
=$A2=MAX($A$2:$A$100)
パターン2:目標達成率の最高・最低を見る
// 担当者別の達成率データで、最高達成者・最低達成者を特定
=MAXIFS(C2:C, B2:B, "Q1") // Q1の最高達成率
=MINIFS(C2:C, B2:B, "Q1") // Q1の最低達成率(要注意ライン)
パターン3:在庫管理 — 最小在庫を見つける
// カテゴリ別に最小在庫を一覧化
=MINIFS($C$2:$C$100, $B$2:$B$100, E2)
// E列にカテゴリ名を並べてフィルして最小在庫を表示
MAXIFS が使えないバージョンの代替(古い環境)
// 配列数式で代替(Ctrl+Shift+Enter が必要な環境)
=MAX(IF(B2:B100="東京", C2:C100))
// スプレッドシートなら通常の数式として動く
=MAX(FILTER(C2:C100, B2:B100="東京"))
この知識をGASで活かす
GASで複数列から条件付き最大値を取るには filter+reduce の組み合わせが必要です。スプレッドシートの MAXIFS で先にロジックを検証してからGASに移植すると実装が速くなります。
Free Newsletter
AIを業務に活かしたいなら
SMR-Labメルマガ
毎週火曜10時、コピペで使えるChatGPTプロンプト・
GASテンプレートをお届け。登録は1分・完全無料。
