無料でExcel並み!Google スプレッドシートの使い方
1,000行あっても大丈夫! 自動連番で行の追加・削除にも対応できるスプシの連番テクニックまとめ
2019年9月17日 06:55
数字の連番を振る場合どうしていますか?「1」「2」と入力してから下方向へドラッグするのもいいですが、数十行以上になってくると辛いですよね。また、行を追加・削除したときに連番を振り直すのも無駄な作業です。今回はスプレッドシートで使える数字の連番テクニックを3つ紹介します。
❶入力済みのデータ範囲に連番を振る
いつもと同じように「1」「2」と入力しておきます。セルの右下に表示されている■をダブルクリックするだけで連番を入力可能です。ただし、左右どちらかの列にデータが入力されていないとこのテクニックは使えません。また、左右の列のデータが連続するところまで、つまり空白の手前までで連番は止まります。すでにリストがある状態で「No列」などを追加したいときに有効ですね。
❷行を追加・削除しても自動的に連番を振る
今度は自動的に連番を振るためにROW関数を使ってみましょう。ROW関数は指定したセルの行番号を取得できる関数です。例えば「=ROW(A2)」なら結果は「2」となります。セルの指定を省略して「=ROW()」とすれば、ROW関数が入力されているセルの行番号が表示されます。ここでは、A2を開始位置として「1」から連番を振り、関数式をコピーしたいので「=ROW()-1」と入力します。
ROW関数で行番号を取得しているため、行を追加・削除しても自動的に連番が振り直されます。試しに8-10行目を削除してみます。
❸大量の連番を振る
続けて、A2から100行分連番を振ってみます。指定した行数まで連番を振るには、ARRAYFORMULA関数が便利です。ARRAYFORMULA関数は、1つの数式の結果を複数の範囲に展開できます。連番を入力する関数式は「=ARRAYFORMULA(ROW(A2:A101)-1)」となります。ROW関数の結果をA2からA101まで表示することになります。2行目から「1」を振りたいので「-1」しています。例えば「A2:A1001」とすれば1,000行分連番を振ることが可能です。
ARRAYFORMULA関数の結果が、A2:A101の範囲に展開されている状態です。連番を値に変換するには、いったんコピーして右クリックし、[特殊貼り付け]-[値のみ貼り付け]で貼り付けておきます。
なお、ARRAYFORMULA関数の結果を展開するセル範囲(ここでは、A2:A101)にデータが入力されている場合はエラーとなります。あらかじめデータを削除しておきましょう。