メインコンテンツへスキップ

Excelで動的なトップ10またはnリストを作成するにはどうすればよいですか?

Author: Xiaoyang Last Modified: 2025-05-23

トップリストは、企業や個人を値に基づいてランク付けするために使用されます。例えば、クラスの学生の成績リストがあるとします。ここで、以下のようなスクリーンショットに示されるように、学生の動的なトップ10リストを作成したいとします。この記事では、Excelワークシートでトップ10またはnリストを作成するためのいくつかの数式を紹介します。


Excelで動的なトップ10リストを作成する

Excel 2019およびそれ以前のバージョンでは、トップ10リストまたは条件付きのトップ10リストを抽出するには、次の数式を使用する必要があります:

動的なトップ10リストを作成するための数式

1. 最初に、データ範囲からトップ10の値を抽出するには、以下の数式を空白セル(G2)に入力し、フィルハンドルを下にドラッグしてトップ10の値を取得してください。スクリーンショットをご覧ください:

=LARGE($B$2:$B$20,ROWS(B$2:B2))
: この数式では、B2:B20はトップ10の値を取得したいデータ範囲であり、B2はデータ範囲の最初のセルです。

apply a formula to extract the top 10 values

2. 次に、以下の数式をセルF2に適用し、Ctrl + Shift + Enterキーを同時に押して最初の結果を得てください。スクリーンショットをご覧ください:

=INDEX($A$2:$A$20,SMALL(IF($B$2:$B$20=G2,ROW($B$2:$B$20)-ROW($B$1)),COUNTIF($G$2:G2,G2)))
: 上記の数式では、A2:A20はトップ10の値に関連する名前を取得したいデータ範囲であり、B2:B20はすべての値を含むデータ範囲、G2は列Bから抽出された最大値のセル、B1は値リストのヘッダーセルです。

use a formula to get relative item

3. 最初の結果を得た後、数式セルを選択し、フィルハンドルを下にドラッグして他の名前を一度に取得します。スクリーンショットをご覧ください:

drag and fill the formula to other cells

a screenshot of kutools for excel ai

Kutools AIでExcelの魔法を解き放つ

  • スマート実行: セル操作、データ分析、グラフ作成を簡単なコマンドで行います。
  • カスタム数式: ワークフローを合理化するための独自の数式を生成します。
  • VBAコーディング: 簡単にVBAコードを作成し実装します。
  • 数式の解釈: 複雑な数式を簡単に理解できます。
  • テキスト翻訳: スプレッドシート内の言語障壁を取り除きます。
AI搭載ツールでExcelの機能を強化しましょう。今すぐダウンロードして、かつてないほどの効率を体験してください!

条件付きで動的なトップ10リストを作成するための数式

場合によっては、条件に基づいたトップ10リストが必要になるかもしれません。例えば、以下のようにClass1のトップ10の名前とスコアを取得したい場合です。

create a dynamic top 10 list with criteria

1. トップ10リストを取得するには、次の数式を使用してトップ10のスコアも抽出する必要があります:

=LARGE(IF($B$2:$B$25=$F$2,$C$2:$C$25),ROW(I2)-ROW(I$1))

2. そして、Ctrl + Shift + Enterキーを同時に押して最初の結果を得てください。その後、この数式を下にドラッグして他の値を表示します。スクリーンショットをご覧ください:

apply a formula to extract the top 10 values based on criteria

3. 次に、以下の数式をセルI2にコピーして貼り付け、Ctrl + Shift + Enterキーを同時に押して最初の結果を抽出してください。その後、この数式を他のセルにドラッグして埋めると、トップ10の名前が表示されます。

=INDEX($A$2:$A$25,SMALL(IF(($C$2:$C$25=J2)*($B$2:$B$25=$F$2),ROW($C$2:$C$25)-ROW($C$1)),COUNTIF(J2:$J$2,J2)))

Office 365で動的なトップ10リストを作成する

上記の数式は理解するのが難しい場合がありますが、Office 365を使用している場合、そのINDEX、SORT、SEQUENCE関数を使用して、このタスクを完了するためのシンプルな数式を作成できます。

動的なトップ10リストを作成するための数式

トップ10のデータリストを取得するには、以下の数式を使用してください:

=INDEX(SORT(A2:B20,2,-1),SEQUENCE(10),{1,2})

そして、Enterキーを押すだけで、トップ10リストのすべてのデータが一度に表示されます。スクリーンショットをご覧ください:

use a formula to create a dynamic top 10 list in Office 365

ヒント:

SORT関数:

=SORT(array, [sort_index], [sort_order], [by_col])

  • array: ソートしたいセルの範囲;
  • [sort_index]: 配列をソートする列または行番号。例えば、データ範囲の2列目でソートする場合、ソートインデックスは2になります;
  • [sort_order]: 数字1(または省略)は昇順でのソートを示します;数字-1は降順でのソートを示します;
  • [by_col]: ソートの方向。TRUEは列単位で検索、FALSEまたは省略は行単位で検索を示します。

この数式では、次のようにSORT関数を使用しています:

SORT(A2:B20,2,-1): これは、セル範囲A2:A20を2列目で降順にソートすることを意味します。


SEQUENCE関数:

=SEQUENCE(rows, [columns], [start], [step])

  • rows: 返す行数;
  • [columns]: 返す列数。省略すると、1列のみ返します。
  • [start]: シーケンスの最初の数字。省略すると、1から開始します。
  • [step]: 各数字間の増分。省略すると、各増分は1になります。

この数式では、SEQUENCE(10)を使用して1から10までのリストを作成しています。

最後に、SORT関数とSEQUENCE関数を両方ともINDEX関数に入れます: =INDEX(SORT(A2:B20,2,-1),SEQUENCE(10),{1,2})。これにより、データ範囲から最初の10レコードが返され、列1と列2が返されます。


条件付きで動的なトップ10リストを作成するための数式

条件付きのトップ10リストを表示するには、FILTER関数をSORT関数に次のように組み込む必要があります:

=INDEX(SORT(FILTER(A2:C25,B2:B25=F2),3,-1),SEQUENCE(10),{1,3})

そして、Enterキーを押すだけで、指定された条件に基づくトップ10リストのすべてのデータが一度に表示されます。スクリーンショットをご覧ください:

another formula to create a dynamic top 10 list with criteria in office 365

ヒント:

FILTER関数:

=FILTER(array, include, [if_empty])

  • array: フィルタリングするセルの範囲。
  • include: 配列をフィルタリングするために使用する条件で、TRUEまたはFALSEの結果を持つ配列を取得し、TRUEの値がフィルターに保持されます。
  • [if_empty]: マッチする結果が返されない場合に表示される値。

この数式では、=FILTER(A2:C25,B2:B25=F2)は、範囲A2:C25をフィルタリングし、B2:B25の値が特定のセルF2と等しい場所を示します。

最高のオフィス生産性ツール

🤖 Kutools AI アシスタント: データ分析を革命化する: インテリジェント実行   |  コード生成  |  カスタム数式の作成  |  データを分析しグラフを生成  |  拡張機能を呼び出す
人気の機能: 重複を見つけてハイライトまたはマーキング   |  空白行を削除   |  データを失わずに列またはセルを統合   |   丸める ...
スーパーLOOKUP: 複数条件のVLookup    複数値のVLookup  |   複数シートの検索   |   ファジーマッチ ....
高度なドロップダウンリスト: ドロップダウンリストを迅速に作成   |  依存ドロップダウンリスト   |  マルチセレクトドロップダウンリスト ....
列管理: 特定の数の列を追加  |  列を移動  |  非表示列の可視ステータスを切り替え  |  範囲と列を比較 ...
注目の機能: グリッドフォーカス   |  デザインビュー   |   強化された数式バー    ワークブック & ワークシート管理   |  オートテキスト ライブラリ (Auto Text)   |  日付ピッカー   |  データの統合   |  セルの暗号化/復号化    リストで電子メールを送信   |  スーパーフィルター   |   特殊フィルタ (太字/斜体/取り消し線をフィルタリング...) ...
トップ15のツールセット12 のテキストツール (テキストの追加, 特定の文字を削除, ...)  |  50以上 のグラフ の種類 (ガントチャート, ...)  |  40以上の実用的な 数式 (誕生日に基づいて年齢を計算する, ...)  |  19 の挿入ツール (QRコードの挿入, パスから画像を挿入, ...)  |  12 の変換ツール (単語に変換する, 通貨変換, ...)  |  7 の統合 & セルの分割ツール (高度な行のマージ, セルの分割, ...)  |  ...さらに多く

Kutools for ExcelでExcelスキルを強化し、これまでにない効率を体験してください。 Kutools for Excelは、300以上の高度な機能を提供し、生産性を向上させ、保存時間を節約します。  最も必要な機能を入手するにはここをクリック...


Office TabはOfficeにタブインターフェイスをもたらし、作業を非常に簡単にします

  • Word、Excel、PowerPoint、Publisher、Access、Visio、Projectでタブ付きの編集と読み取りを有効にします。
  • 新しいウィンドウではなく、同じウィンドウの新しいタブで複数のドキュメントを開いて作成します。
  • 生産性を50%向上させ、毎日数百回のマウスクリックを減らします!