2024年12月11日【ID:0】
【Excel】データ数に応じて自動で連番を振る方法
以下の表のように、特定の項目に値を入力すると同時に連番が表示される仕組みの作成方法について解説していきます。

今回解説する方法なら、数式を1か所に入力するだけで、以降は自動的に連番が更新されます。面倒なコピー作業は不要になります。
自動で連番を振る方法
自動で連番を振るために、今回は『SEQUENCE関数』と『COUNTA関数』を活用します。
SEQUENCE関数の使い方は、以下になります。
=SEQUENCE(行, 列, 開始, 目盛り)
// 数式を入力したセルを起点として指定した連番を表示する
// 行:連番を表示する行範囲(省略時は1)
// 列:連番を表示する列範囲(省略時は1)
// 開始:連番の開始数値(省略時は1)
// 目盛り:連番の間隔(省略時は1)
COUNTA関数の使い方は、以下になります。
=COUNTA(値1, [値2], [値3], …)
// 指定したセル内で空でないセルの数を返す
// 値:対象のセル(2以降は省略可能)
これらの関数を組み合わせて実現していきます。
以下の表の場合、「氏名」の項目に必ず値が入力されているという前提で、「氏名」の数までの連番を表示させることで実現することができます。

具体的には、以下の数式をセルB3に入力することで実現できます。
=SEQUENCE(COUNTA(C:C)-1)
// COUNTA関数でC列の値が入力されているセルの数を取得し、2行目の見出し分の1を引くことで、氏名の数を求める

このように、氏名の数に対応した連番を表示することができます。
注意点
この方法の場合は、氏名の項目に空白行が出来てしまうと、正しい連番が表示されなくなります。

そのため、特定の項目に値が必ず入力されている前提で活用する必要があります。