- 更新日 : 2026年3月18日
LARGE関数の使い方:エクセルで上位n番目の値を抽出する方法
LARGE関数は、データセットから指定した順位の大きい値を抽出するエクセルの統計関数です。最大値だけでなく、2番目、3番目に大きい値など、任意の順位の値を簡単に取得できます。売上ランキングの作成、成績上位者の抽出、品質管理での異常値検出、在庫管理での重点商品の特定など、様々なビジネスシーンで活用されています。本記事では、LARGE関数の基本的な使い方から実務での応用例、SMALL関数との使い分け、動的なランキング作成方法、配列数式での活用、そしてよくあるエラーとその解決方法まで、初心者にも分かりやすく解説します。
LARGE関数の使い方
LARGE関数とは
LARGE関数は、指定したデータ範囲の中から、大きい方から数えて指定した順位の値を返す関数です。単純に最大値を求めるMAX関数とは異なり、2番目に大きい値、3番目に大きい値といった、任意の順位の値を柔軟に取得できる点が特徴です。この機能により、上位データの分析やランキング作成などに活用しやすい関数です。
たとえば、営業成績の上位5名を表彰したい場合や、売上高上位10商品を特定したい場合など、最大値だけでは足りないケースにも対応できます。
基本構文
LARGE関数の構文は次のとおりです。
=LARGE(配列, k)
各引数について詳しく説明します。
- 配列:順位を求めたい数値データの範囲を指定します。セル範囲、配列定数、名前付き範囲などが使用できます。文字列や論理値は無視されます。
- k:取得したい順位を指定します。1を指定すると最大値、2を指定すると2番目に大きい値が返されます。正の整数を指定する必要があります。
LARGE関数の動作原理
LARGE関数は以下の手順で値を決定します。
- 指定された範囲から数値データのみを抽出
- 数値を降順(大きい順)に並べ替え
- 指定された順位(k)の値を返す
- 同じ値が複数ある場合も、それぞれ別の順位として扱う
この動作を理解することで、結果の解釈が正確になります。
基本的な使用例
実際にLARGE関数を使用してみましょう。
データ:85, 92, 78, 95, 88, 91, 82, 90
=LARGE(A1:A8, 1) // 結果:95(最大値)
=LARGE(A1:A8, 2) // 結果:92(2番目に大きい値)
=LARGE(A1:A8, 3) // 結果:91(3番目に大きい値)
複数の範囲をまとめて上位を求める場合:
(Microsoft 365 以降)
=LARGE(VSTACK(A1:A10, C1:C10), 1) // 2つの範囲を縦結合して最大値
(従来版Excel:配列数式として入力)
=LARGE(CHOOSE({1,2}, A1:A10, C1:C10), 1) // Ctrl+Shift+Enterで確定
※最大値だけでよい場合は =MAX(A1:A10, C1:C10) が簡単です。
セル参照で順位を指定する場合:
B1セルに順位(例:5)が入力されている場合
=LARGE(A:A, B1) // 5番目に大きい値を返す
MAX関数との違い
MAX関数は最大値のみを返しますが、LARGE関数はより柔軟です。
=MAX(A1:A10) // 最大値のみ
=LARGE(A1:A10, 1) // 同じ結果だが、順位を変更可能
上位3つの値の合計を求める場合:
=LARGE(A1:A10, 1) + LARGE(A1:A10, 2) + LARGE(A1:A10, 3)
LARGE関数の利用シーン
売上ランキングの作成
営業データから上位の成績を抽出する最も一般的な用途です。
月間売上高トップ10の抽出:
1位:=LARGE(売上データ!B:B, 1)
2位:=LARGE(売上データ!B:B, 2)
…
10位:=LARGE(売上データ!B:B, 10)
売上高と担当者名を対応させる:
=INDEX(担当者名, MATCH(LARGE(売上高, 1), 売上高, 0))
上位20%の売上高の境界値:
=LARGE(売上データ, ROUNDUP(COUNT(売上データ)*0.2, 0))
成績評価と表彰者の選定
試験の成績や評価データから上位者を特定します。
試験成績上位5名の点数:
=LARGE(点数データ, ROW(1:5)) // 配列数式として入力
上位10%に入るための最低点:
=LARGE(成績データ, ROUNDUP(COUNT(成績データ)*0.1, 0))
学年別の最高点:
=LARGE(IF(学年=1, 点数データ), 1) // 1年生の最高点
品質管理での異常値検出
製造データから異常に大きい値を検出します。
測定値の上位5つを異常値候補として抽出:
異常値1:=LARGE(測定値データ, 1)
異常値2:=LARGE(測定値データ, 2)
…
異常値5:=LARGE(測定値データ, 5)
上位1%を異常値として判定:
=IF(A1>=LARGE(全データ, ROUNDUP(COUNT(全データ)*0.01, 0)), “異常値”, “正常”)
在庫管理での重点商品特定
売れ筋商品や在庫回転率の高い商品を特定します。
売上個数トップ20商品の抽出:
=LARGE(売上個数データ, SEQUENCE(20)) // Excel 365の場合
在庫金額上位商品の特定:
=LARGE(在庫数量*単価, ROW($1:$10))
給与・報酬分析
給与データの分析で高額所得者の把握に使用します。
部門別最高給与:
=LARGE(IF(部門=”営業”, 給与データ), 1)
給与上位5%のボーダーライン:
=LARGE(給与データ, ROUNDUP(COUNT(給与データ)*0.05, 0))
LARGE関数の応用・他関数との組み合わせ
SMALL関数との併用
上位と下位の両方を分析する場合に組み合わせます。
最大値:=LARGE(A:A, 1)
最小値:=SMALL(A:A, 1)
範囲:=LARGE(A:A, 1) – SMALL(A:A, 1)
上位下位を除いた平均(トリム平均):
=AVERAGE(IF((A:A<LARGE(A:A,3))*(A:A>SMALL(A:A,3)), A:A))
INDEX/MATCH関数との組み合わせ
順位に対応する他の情報を取得します。
売上1位の商品名を取得:
=INDEX(商品名, MATCH(LARGE(売上高, 1), 売上高, 0))
上位5商品の一覧作成:
順位1:=INDEX(商品名, MATCH(LARGE(売上高, ROW(A1)), 売上高, 0)) // 下方向にコピー
(Microsoft 365 の場合は 1式で)=TAKE(SORTBY(商品名, 売上高, -1), 5)
ROW関数での動的順位指定
連続した順位を自動生成します。
=LARGE($A$1:$A$100, ROW(A1)) // 下にコピーすると順位が増加
上位n件の動的な抽出:
(下方向にコピーする場合)=IF(ROW(A1)<=表示件数, LARGE(データ範囲, ROW(A1)), “”)
(Microsoft 365 のスピル)=LARGE(データ範囲, SEQUENCE(表示件数))
条件付きで上位の値を取得(LARGE)
- 特定カテゴリ内の上位値:
(Microsoft 365)=LARGE(FILTER(数値データ, カテゴリ=”A”), 3)
(従来版Excel:配列数式)=LARGE(IF(カテゴリ=”A”, 数値データ), 3) // Ctrl+Shift+Enter - 期間限定での上位値:
(Microsoft 365)=LARGE(FILTER(売上データ, (日付>=開始日)(日付<=終了日)), 1)
(従来版Excel:配列数式)=LARGE(IF((日付>=開始日)(日付<=終了日), 売上データ), 1) // Ctrl+Shift+Enter
SUMPRODUCTで条件付きの順位(ランク番号)を求める
- 同一カテゴリ内で「対象値」の順位(大きい順):
=1+SUMPRODUCT( (カテゴリ=対象カテゴリ) * (数値データ>対象値) ) - 期間条件付きで「対象値」の順位(大きい順):
=1+SUMPRODUCT( (日付>=開始日) * (日付<=終了日) * (売上データ>対象値) )
※「対象カテゴリ」「対象値」はセル参照に置き換えて使用します(例:対象カテゴリ=E2、対象値=F2)。
(Microsoft 365の別解)=RANK.EQ(対象値, FILTER(数値データ, カテゴリ=対象カテゴリ), 0)
配列数式での一括取得
複数の順位を一度に取得します。
上位10件を縦に並べる:
{=LARGE(データ範囲, ROW(1:10))} // Ctrl+Shift+Enter
上位5件を横に並べる:
{=LARGE(データ範囲, COLUMN(A:E))} // Ctrl+Shift+Enter
動的な上位n%の抽出
データ数に応じて自動的に上位の境界を決定します。
上位10%の境界値:
=LARGE(データ範囲, ROUNDUP(COUNT(データ範囲)*0.1, 0))
該当判定:
=IF(A1>=LARGE(データ範囲, ROUNDUP(COUNT(データ範囲)*0.1, 0)), “上位10%”, “”)
RANK関数との相互活用
LARGEで値を取得し、RANKで順位を確認します。
特定値の順位:=RANK(A1, データ範囲, 0)
その順位の値:=LARGE(データ範囲, RANK(A1, データ範囲, 0))
LARGE関数のよくあるエラーと対策
#NUM!エラーの原因と対処
#NUM!エラーは、よく発生するエラーですが、主に以下の原因があります。
原因1:kが範囲内の数値の個数を超えている
データ数:10個
=LARGE(A1:A10, 11) // エラー:11番目は存在しない
対策:
=IF(B1<=COUNT(A:A), LARGE(A:A, B1), “順位が範囲外”)
原因2:kが0以下の値
=LARGE(A1:A10, 0) // エラー
=LARGE(A1:A10, -1) // エラー
対策:
=IF(B1>0, LARGE(A:A, B1), “順位は1以上を指定”)
#VALUE!エラーの対処
引数の型が不適切な場合に発生します。
=LARGE(A1:A10, “三”) // エラー:文字列は不可
対策:
=IFERROR(LARGE(A:A, B1), “数値を入力してください”)
空白セルと文字列の扱い
LARGE関数は空白セルと文字列を無視しますが、0は数値として扱います。
0を除外する場合:
{=LARGE(IF(A:A<>0, A:A), 1)} // 配列数式
エラー値を含む場合の対処:
{=LARGE(IF(NOT(ISERROR(A:A)), A:A), 1)}
重複値の扱い
同じ値が複数ある場合、それぞれ別の順位として扱われます。
データ:100, 90, 90, 80
=LARGE(A1:A4, 2) // 結果:90
=LARGE(A1:A4, 3) // 結果:90(同じ値)
ユニークな値のみを対象にする場合:
=LARGE(UNIQUE(A:A), 2) // Excel 365の場合
パフォーマンスの最適化
大量データで複数のLARGE関数を使用すると処理が重くなります。
- 必要な範囲のみを指定
- 一度ソートしてからINDEX関数を使用
- ヘルパー列で事前に順位を計算
// 非効率
=LARGE(A:A, 1) + LARGE(A:A, 2) + … + LARGE(A:A, 10)
// 効率的(ヘルパー列使用)
B1:=LARGE($A:$A, ROW(A1)) // 下方向にコピー
合計:=SUM(B1:B10)
(Microsoft 365 の場合、1式で)=SUM(LARGE($A:$A, SEQUENCE(10)))
動的範囲での注意点
データ範囲が変動する場合の対処法:
(Microsoft 365)=LARGE(FILTER(A:A, A:A<>””), 1) // 空白を除いて動的に抽出
(従来版Excel・数値列想定)=LARGE(A$2:INDEX(A:A, MATCH(9.999E+307, A:A)), 1) // 見出しがA1の場合はA$2から開始
テーブル機能を使用:
=LARGE(テーブル1[売上], 1) // 自動的に範囲が調整される
LARGE関数を使って上位データを効率的に抽出しよう
LARGE関数は、データセットから任意の順位の大きい値を抽出できる実用的な関数です。売上ランキング、成績上位者の特定、品質管理での異常値検出など、業務で幅広く利用できます。
SMALL関数と組み合わせることで上位下位の分析が可能になり、INDEX/MATCH関数との連携で、順位に対応する詳細情報も取得できます。
順位がデータ数を超えないよう注意し、必要に応じて条件付き抽出や動的な範囲指定を活用することで、より実践的なデータ分析が可能になります。
システム乱立を解消するためのステップとは?
多くの企業がバックオフィス業務効率化のため多様なクラウドシステムを導入するも、「便利なはずが非効率」という現実に直面しています。
その原因は、勤怠や経費など「部分最適」なシステム導入による乱立です。システム同士がつながらず、データの手入力やExcelでの突き合わせ作業が常態化。
これは「見えないコスト」を増やし、業務フローを複雑化させ、現場の負担を増大させます。システム乱立のリスクを整理し、業務アセスメントによる根本解決策をご紹介するホワイトペーパーを用意していますので、ぜひお気軽にご覧ください。
※ 掲載している情報は記事更新時点のものです。
※本サイトは、法律的またはその他のアドバイスの提供を目的としたものではありません。当社は本サイトの記載内容(テンプレートを含む)の正確性、妥当性の確保に努めておりますが、ご利用にあたっては、個別の事情を適宜専門家にご相談いただくなど、ご自身の判断でご利用ください。
Excel 集計・統計関数の関連記事
新着記事
-
# 業務効率化の基本
クラウドのメリット・デメリットは?主要サービスやオンプレミスとの比較表をもとに解説
クラウドのメリット・デメリットは? クラウドは、初期費用を抑えて迅速な導入や拡張ができる点が大きなメリットですが、ネット環境への依存や長期的なコスト増といったデメリットも伴います。…
詳しくみる -
# 業務効率化の基本
社外へのファイル共有を安全に行う方法は?リスクやツール選びのポイントを徹底解説
社外へのファイル共有を安全に行う方法は? 社外へのファイル共有は、機密保持のためクラウドストレージ等の専用ツールを活用し、適切な権限管理と期限設定のもとで行うべき重要な業務プロセス…
詳しくみる -
# 業務効率化の基本
マニュアルの種類は?業務・規範・安全管理など目的別に作成する方法を解説
マニュアルの種類は? マニュアルの種類は、活用目的や対象読者に応じて「業務」「操作」「規範」「教育・訓練」「作業」「製品」「安全・危機管理」の7つに大別されます。 業務・操作: 全…
詳しくみる -
# メモ
Windowsのメモ帳で文字を検索するには?文字列を置換・ファイルを横断検索する方法も解説
Windowsのメモ帳で文字を検索するには? Windowsのメモ帳で文字を検索するには、ショートカットキー「Ctrl + F」を使用するのが効率的です。 検索・置換:Ctrl +…
詳しくみる -
# 業務効率化の基本
ノウハウを蓄積するには?組織の知識を資産に変える方法・仕組みづくり・ツール選びを解説
ノウハウの蓄積方法まとめ ノウハウの蓄積とは、個人の経験や技術(暗黙知)を文書や動画などの形式知へ変換し、組織全体で共有・再利用できる資産に変えるプロセスです。 属人化の解消: 担…
詳しくみる -
# ツール
チャットが苦手だと感じる理由は?原因・特徴・克服するためのコツを徹底解説
チャットが苦手だと感じる理由は? チャットが苦手な主な理由は、即時返信へのプレッシャーや感情が伝わりにくい不安にあり、無理に速度を追わず運用ルールを整えることが克服の鍵です。 脱・…
詳しくみる
