スプレッドシートのSORTN関数とは
SORTN関数は、Googleスプレッドシートで指定されたデータ範囲を並べ替えた後、上位n個の項目を抽出する関数です。この関数はフィルタ機能の一種として分類されており、大量のデータセットから特定の数だけのレコードを取得する際に使用されます。
基本的な構文はSORTN(範囲, [n], [同等項目の表示モード], [並べ替える列1, 昇順1], ...)
となっています。範囲パラメータは必須で、その後のパラメータはすべて任意項目として設定可能です。
【PR】プログラミングや生成AIを無料で学べる「コードキャンプフリー」
基本パラメータの構成と動作
rangeパラメータは並べ替え対象となるデータ範囲を指定し、nパラメータで取得する項目数を設定できます。nパラメータを省略した場合、デフォルト値として1が適用され、最上位の1件のみが返されることになります。
=SORTN(A2:C6)
=SORTN(A2:C6, 2)
display_ties_modeパラメータは同順位の項目をどのように表示するかを制御する重要な設定です。0から3までの数値で指定でき、0は最大n行まで、1はn行目と同一の行も含めて表示、2は重複除去後にn行まで、3は重複を含む全ての行を表示します。
sort_column1とis_ascending1のペアで並べ替え基準となる列とその方向を指定できます。is_ascending1にTRUEを設定すると昇順、FALSEを設定すると降順での並べ替えが実行されることになります。
複数条件での並べ替えと実装
複数の列を使用した並べ替えを行う場合、sort_column1の後にsort_column2、is_ascending2のペアを追加指定できます。これにより、第1条件で同順位の場合に第2条件で再度並べ替えを行う階層的なソート処理が可能です。
=SORTN(A2:C6, 3, 0, B2:B6, FALSE)
=SORTN(A2:C6, 3, 3, 2, FALSE, 3, FALSE)
列の指定方法には2つのパターンがあり、範囲外の列を参照する場合はB2:B6
のような範囲指定を使用します。一方で範囲内の列を参照する場合は列番号(1から始まる整数値)での指定が可能となっています。
関数の実行結果として返される行は、指定された列のみで並べ替えが実行されますが、その他の列は元の順序を維持したまま表示されます。sort_column1とis_ascending1を省略した場合、範囲内の最も左の列を基準として昇順での並べ替えが自動的に適用されることになります。
※上記コンテンツの内容やソースコードはAIで確認・デバッグしておりますが、間違いやエラー、脆弱性などがある場合は、コメントよりご報告いただけますと幸いです。
ITやプログラミングに関するコラム
- Canvaとは?使い方やアカウント登録などを初心者向けに解説
- git configで設定情報を確認・表示する方法
- 「Pythonはやめとけ」と言われる理由と学習するメリット
- Ubuntuのversionを確認する方法
- Geminiで画像を生成する方法|ChatGPTとの比較結果も紹介