Excelでフィルター後のデータに連番を振る方法(SUBTOTAL)

手順をタップして確認してみましょう。

  1. 通常の連番の問題点

    フィルターで一部の行を非表示にしても、オートフィルで作った連番は非表示の行までそのまま数えてしまい、表示上の番号がバラバラに見えます。

  2. SUBTOTAL関数を入力する

    「=SUBTOTAL(103,$B$2:B2)」のように入力すると、画面に表示されている行だけを基準に番号を数えます。

  3. 下方向へコピーする

    数式を入力したセルのフィルハンドルをドラッグして、残りの行にもコピーします。

  4. フィルターを適用して確認する

    これでフィルターをかけて一部の行を非表示にしても、表示されている行同士で1、2、3の順に番号が振り直されます。

  5. なぜ役立つのか

    フィルターしたリストを印刷したり共有したりする際、常にきれいな連番を保ちたいときに役立ちます。

フィルター後も番号をきれいに保つために

フィルターをかけて一部のデータを非表示にすると、通常の連番は歯抜けになって不自然に見えます。SUBTOTAL関数を使えば、画面に表示されている行だけを基準に、常に1から順番に番号が振られます。

オートフィルターと組み合わせて使う

この方法は通常のオートフィルターと組み合わせると特に便利で、数式を一度入れておけばフィルター条件がどう変わっても自動的に正しく調整されます。

よくある質問

SUBTOTALの「103」という数字にはどんな意味がありますか?

103は「非表示の行を除いてCOUNTA(個数のカウント)を計算する」という関数番号で、フィルターで隠した行だけでなく手動で非表示にした行も除いて計算します。

並べ替えをしても番号は正しく維持されますか?

はい。並べ替え後は数式が再計算され、その時点で画面に表示されている順序に従って番号が振り直されるため、常に正確な連番を確認できます。