エクセル関数辞典 エクセル関数辞典

MAX・MIN・LARGE・SMALL関数の使い方

MAX MIN LARGE SMALL ランキング Excel関数
広告スペース (article-top)

MAX関数とMIN関数は最大値・最小値を求める基本的な関数です。さらにLARGE関数とSMALL関数を使えば、「上から3番目に大きい値」「下から2番目に小さい値」のようにn番目の値を取得できます。売上ランキングや成績順位の把握に欠かせない関数群です。

MAX関数:最大値を求める

MAX関数は、指定した範囲内の最大値を返します。

基本構文

=MAX(数値1, [数値2], ...)

売上データの最高額を求める

月別の売上データから、最も売上が高い月の金額を取得します。

A列:月B列:売上金額
1月2850000
2月3120000
3月4500000
4月2980000
5月3650000
6月3200000
=MAX(B2:B7)

結果は4500000です。3月の売上が最大値として返されます。

複数の範囲を指定する

MAX関数は複数の引数を受け取れます。異なるシートや範囲の中での最大値を求められます。

=MAX(B2:B7, D2:D7)

B列とD列の両方を含めた最大値を返します。

文字列や空白セルの扱い

MAX関数は数値以外のセル(文字列、空白、論理値)を無視します。ただし、引数に直接論理値を指定した場合はTRUEが1、FALSEが0として扱われます。

MIN関数:最小値を求める

MIN関数は、指定した範囲内の最小値を返します。

基本構文

=MIN(数値1, [数値2], ...)

仕入単価の最安値を確認する

商品の仕入データから、最も安い単価を取得します。

A列:仕入先B列:商品名C列:仕入単価
A商事ボールペン45
B物産ボールペン38
C商会ボールペン52
D貿易ボールペン41
=MIN(C2:C5)

結果は38です。B物産の仕入単価が最小値として返されます。

0を除いた最小値

データに0が含まれる場合、MIN関数は0を返します。0を除外して最小値を求めたい場合は、MINIFS関数や配列数式を使います。

# MINIFS関数を使う方法(Excel 2019以降)
=MINIFS(C2:C100, C2:C100, ">0")

LARGE関数:n番目に大きい値を求める

LARGE関数は、指定した範囲内でn番目に大きい値を返します。

基本構文

=LARGE(配列, 順位)
引数説明
配列対象となるセル範囲
順位何番目に大きい値を取得するか

売上トップ3を取得する

売上データから上位3つの金額を取得します。

A列:担当者B列:年間売上
田中15800000
佐藤12300000
山田18500000
鈴木9800000
高橋16200000
伊藤11500000
=LARGE(B2:B7, 1)  → 18500000(1位:山田)
=LARGE(B2:B7, 2)  → 16200000(2位:高橋)
=LARGE(B2:B7, 3)  → 15800000(3位:田中)

LARGE関数の第2引数に1を指定するとMAX関数と同じ結果になります。

セル参照で順位を指定する

順位をセル参照にすると、ランキング表の作成が効率的です。

=LARGE($B$2:$B$7, D2)

D列に1、2、3…と入力しておけば、数式をコピーするだけでランキングが完成します。

SMALL関数:n番目に小さい値を求める

SMALL関数は、指定した範囲内でn番目に小さい値を返します。

基本構文

=SMALL(配列, 順位)

納期の早い順に取得する

注文データから、納品日が早い順に3件を取得します。日付はExcelの内部ではシリアル値(数値)として処理されるため、SMALL関数で並べ替えできます。

A列:注文番号B列:商品C列:納品日
1001商品A2026/4/15
1002商品B2026/4/8
1003商品C2026/4/22
1004商品D2026/4/3
1005商品E2026/4/18
=SMALL(C2:C6, 1)  → 2026/4/3(最も早い納品日)
=SMALL(C2:C6, 2)  → 2026/4/8(2番目に早い納品日)
=SMALL(C2:C6, 3)  → 2026/4/15(3番目に早い納品日)

0を除外してn番目に小さい値を求める

0を含むデータからSMALL関数を使う場合、0が最小値として扱われます。0を除外するには配列数式を使います。

=SMALL(IF(B2:B100>0, B2:B100), 1)

この数式はCtrl+Shift+Enterで確定する必要があります(Excel 365ではそのまま確定できます)。

売上ランキング表の作成

LARGE関数とINDEX・MATCH関数を組み合わせて、順位付きのランキング表を作成できます。

ランキング表の構成

以下のような売上データから、ランキング表を作成します。

A列:担当者B列:売上
田中4500000
佐藤3800000
山田5200000
鈴木2900000
高橋4100000

順位ごとの売上金額

D列に順位(1、2、3…)を入力し、E列に以下の数式を入力します。

=LARGE($B$2:$B$6, D2)

順位に対応する担当者名

F列にINDEX・MATCH関数で担当者名を取得します。

=INDEX($A$2:$A$6, MATCH(LARGE($B$2:$B$6, D2), $B$2:$B$6, 0))

結果として以下のランキング表が完成します。

順位売上金額担当者
15200000山田
24500000田中
34100000高橋
43800000佐藤
52900000鈴木

同じ値がある場合の注意

売上金額が同じ担当者が複数いる場合、MATCH関数は最初に見つかった担当者名を返します。重複がある場合はCOUNTIF関数を組み合わせるなどの工夫が必要です。

よくあるエラーと対処法

#NUM!エラー

LARGE関数やSMALL関数で、順位がデータ件数を超えている場合に発生します。

# データが5件しかないのに6番目を指定するとエラー
=LARGE(B2:B6, 6)  → #NUM!

IFERROR関数でエラーを処理できます。

=IFERROR(LARGE(B2:B6, D2), "")

空白セルの影響

MAX・MIN関数は空白セルを無視しますが、LARGE・SMALL関数も同様に空白セルを無視します。ただし、0が入力されたセルは数値として処理されます。

条件付きの最大値・最小値

Excel 2019以降では、MAXIFS関数とMINIFS関数で条件付きの最大値・最小値を取得できます。

=MAXIFS(C2:C100, B2:B100, "営業1課")

まとめ

MAX・MIN・LARGE・SMALL関数は、データの最大値・最小値やn番目の値を取得する関数です。

  • MAX関数は最大値、MIN関数は最小値を返す
  • LARGE関数はn番目に大きい値、SMALL関数はn番目に小さい値を返す
  • INDEX・MATCH関数と組み合わせてランキング表を作成できる
  • 順位がデータ件数を超えると#NUM!エラーになる
  • 条件付きの最大値・最小値にはMAXIFS・MINIFS関数を使う

なお、これらの関数はいずれもGoogle スプレッドシートでも同じ構文で利用できます。売上ランキングや成績順位の算出など、業務データの分析で幅広く活用できる関数群です。用途に応じて適切な関数を選択しましょう。

広告スペース (article-bottom)

あわせて読みたい