ADVERTISEMENT

【Googleスプレッドシート】データの並べ替えで列ヘッダーを固定する!ヘッダー行を維持する設定

【Googleスプレッドシート】データの並べ替えで列ヘッダーを固定する!ヘッダー行を維持する設定
🛡️ 超解決

Googleスプレッドシートでデータを並べ替えるとき、ヘッダー行まで一緒に並べ替えられてしまい、表の見出しが失われた経験はありませんか。これは並べ替えの範囲にヘッダー行が含まれているために起こります。この記事では、並べ替え時にヘッダー行を固定して、ヘッダー行を維持したままデータだけを並べ替える方法を詳しく解説します。初心者でも簡単に設定できる手順をご紹介します。

【要点】並べ替え時にヘッダー行を固定する3つの方法

  • フィルターを使用する: フィルターを作成すると、列見出しがドロップダウンになり、ヘッダー行を固定したままデータのみ並べ替えできます。
  • データメニューの並べ替えオプションを使う: 範囲を選択し、「データ」→「並べ替え」で「データにヘッダー行がある」にチェックを入れます。
  • SORT関数で第4引数を指定する: =SORT(範囲, 列, 昇順, TRUE) の第4引数にTRUEを指定すると、ヘッダー行が並べ替え対象から除外されます。

ADVERTISEMENT

並べ替えでヘッダー行が動いてしまう原因

スプレッドシートは選択された範囲全体を並べ替えるため、ヘッダー行も含まれていると一緒に並べ替えられます。特に、範囲指定を手動で行う場合にヘッダー行を含んでしまうケースが多いです。また、フィルターを使わずに並べ替えボタンを押すと、範囲内のすべての行が並べ替え対象になります。これを防ぐには、スプレッドシートに「この範囲にはヘッダー行があります」と教える必要があります。

ヘッダー行を固定して並べ替える3つの方法

ここでは、フィルター、データメニュー、SORT関数の3つの方法を順に説明します。いずれもヘッダー行を保護しながらデータを並べ替えることが可能です。

方法1: フィルターを使って並べ替える

  1. データ範囲を選択する
    まず、並べ替えたいデータ範囲内の任意のセルをクリックします。範囲全体を選択する必要はありません。
  2. フィルターを適用する
    メニューから「データ」→「フィルター」をクリックするか、ショートカットキー「Ctrl+Shift+L」を押します。ヘッダー行にフィルターアイコンが表示されます。
  3. 並べ替えを実行する
    並べ替えたい列のフィルターアイコンをクリックし、「昇順で並べ替え」または「降順で並べ替え」を選択します。すると、ヘッダー行はそのままでデータ行だけが並べ替わります。
  4. フィルターを解除する
    並べ替えが終わったら、再度「データ」→「フィルター」をクリックするか、「Ctrl+Shift+L」でフィルターを解除できます。解除後も並べ替え結果は保持されます。

フィルターを使う方法は最も直感的で、ヘッダー行が自動的に固定されるため初心者に最適です。また、複数列の並べ替えもフィルターの「複数の列で並べ替え」オプションから行えます。

方法2: データメニューの並べ替えオプションを使う

  1. データ範囲を選択する
    並べ替えたい範囲をマウスでドラッグして選択します。このとき、ヘッダー行を含めても構いません。
  2. 「データ」→「並べ替え」を開く
    メニューバーから「データ」にカーソルを合わせ、「並べ替え」をクリックします。ダイアログが表示されます。
  3. 「データにヘッダー行がある」にチェックを入れる
    ダイアログの上部にある「データにヘッダー行がある」にチェックを入れます。これで、選択範囲の最初の行がヘッダーとして認識されます。
  4. 並べ替え条件を設定する
    「並べ替え」の列と順序を選択し、必要に応じて「別の並べ替え列を追加」も行います。最後に「並べ替え」ボタンをクリックします。

この方法では、毎回ダイアログで設定する手間はありますが、範囲を自由に指定できる点がメリットです。チェックを入れ忘れるとヘッダー行も並べ替えられてしまうので注意しましょう。

方法3: SORT関数で自動並べ替え

  1. 結果を表示するセルを選択する
    並べ替え結果を出力したいセル(例:E1)をクリックします。元データとは別の場所を推奨します。
  2. SORT関数を入力する
    次の構文で入力します:=SORT(範囲, 並べ替え列番号, 昇順, ヘッダー)
    例えば、範囲A2:C20、1列目を昇順、ヘッダー行ありの場合は =SORT(A2:C20, 1, TRUE, TRUE) となります。
  3. 第4引数の意味を理解する
    第4引数にTRUEを指定すると、範囲の先頭行をヘッダーとみなし、並べ替え対象から除外します。FALSEにするとヘッダー行も含めて並べ替えられます。TRUEを推奨します。
  4. 結果を確認する
    関数が正しく反映されると、指定した列で並べ替えられたデータが表示されます。元データを変更すると自動で更新されます。

SORT関数は数式を使うため少しハードルが高いですが、元データを更新するたびに自動で並べ替えが再計算されるため、頻繁にデータが変わる場合に便利です。また、ARRAYFORMULAと組み合わせて動的な範囲を指定することも可能です。

各方法の比較と注意すべきポイント

方法 メリット デメリット
フィルター ボタン1つで簡単、ヘッダー固定が自動、複数列の並べ替えも可能 フィルターを常に有効にしておく必要あり、他のフィルター操作と競合する場合がある
データメニュー並べ替え 範囲指定が柔軟、チェック1つでヘッダー保護、フィルター不要 毎回ダイアログ操作が必要、範囲を選択し直す必要がある
SORT関数 自動更新、数式で柔軟に制御、元データを変更しても再計算 数式の理解が必要、ヘッダー行が範囲の先頭である前提、別シートへの出力がやや複雑

フィルター使用時の注意点

フィルターをかけた状態で手動で並べ替えようとすると、フィルター条件が一時的に解除されることがあります。そのため、並べ替えは必ずフィルターのドロップダウンから行うようにしてください。また、フィルターアイコンをクリックして並べ替えると、その列のフィルター条件がクリアされ、全てのデータが表示された状態で並べ替えが実行されます。

データメニュー並べ替えでヘッダー行が複数行ある場合

データメニューの並べ替えオプションは、最初の行のみをヘッダーと認識します。もし2行以上にわたるヘッダーがある場合は、事前に最初の行だけを残して結合するか、フィルターを使用するか、SORT関数で範囲を2行目以降に指定するなどの工夫が必要です。例えば、ヘッダー行が1〜2行目にある場合、並べ替え範囲を3行目以降(A3:C100)に設定し、フィルターを使う方法が簡単です。

SORT関数で範囲を動的にする

SORT関数の範囲にデータが追加・削除される場合、INDIRECT関数とCOUNTAを組み合わせて動的な範囲を指定できます。例:=SORT(INDIRECT("A2:A"&COUNTA(A:A)), 1, TRUE, TRUE) ただし、この場合ヘッダー行はA1と仮定して範囲をA2からにしています。この方法は上級者向けですが、データ量が変わる場合に便利です。

ADVERTISEMENT

まとめ

Googleスプレッドシートでデータを並べ替える際、ヘッダー行を固定するにはフィルターの使用、データメニューのオプション、SORT関数の3つの方法があります。いずれもヘッダー行を並べ替え対象から除外して、見出しを維持できます。初めての方はフィルターから始めるとよいでしょう。頻繁に並べ替えを繰り返す業務ではSORT関数を導入すると効率的です。ぜひご自身のデータに合わせて最適な方法を試してみてください。


ADVERTISEMENT

この記事の監修者
✍️

超解決 第一編集部

疑問解決ポータル「超解決」の編集チーム。正確な検証と、現場視点での伝わりやすい解説を心がけています。