連番入力!Excelで1~10000の数字を瞬時に入力する方法

Excel

A列1行目から10000行目まで。
ここに1から10000までの数字を順番に入力するとします。

一見すると、気が遠くなるような単純作業に思えるかもしれません。
しかし、Excelの機能を活用すれば、この作業も効率的に行えます

この記事では、A列に1万個の連番を入力する方法をいくつかご紹介します。

基本の連続データの作成機能から、関数、そしてVBA(マクロ)まで。
様々なアプローチを試してみましょう。

皆さんにExcelの新たな一面を発見していただけたら幸いです。

連番作成は多くのExcel作業にも応用できる、汎用性の高いスキルです!

今回のミッション

A列の1行目から10000行目までに、1から10000までの連番を入力する!

補足

仮に、1から100まで程度の連番であれば、手作業でも可能です。

フィルハンドルをドラッグするだけでも、すぐに作成できます。
(※フィルハンドル=セルの右下に表示される下の画像の■の部分)

しかし、これが1万、あるいは10万だったらどうでしょうか?
手作業で入力したり、マウスでドラッグしたりするのはかなり大変です。

時間もかかり、操作ミスも起こりやすくなります。

そこで、Excelの機能を賢く使って、効率的に達成する方法を探ります。
やり方は一つではありません。様々なアプローチを試していきましょう!

準備

必要なものは、Excelの空白のブックのみです。

Excelのバージョンによって、使える機能が一部異なります。
この記事では Excel 2021 を使用して画像等を作成しています。

さぁ、行ってみましょう!

方法1:連続データの作成機能を利用する

考えかた

Excelに標準で備わっている「連続データの作成」機能を使います。

この機能は、指定した範囲に、一定のルールで連続データを入力するものです。

開始値、停止値、増分値を指定するだけで、簡単に連番を作成できます。

手順

A1セルに連番の開始値「1」を入力

A1セルに「1」を入力するのは、連番をどこから始めるかをExcelに教えるためです。

これがないと、Excelは「連番をどの数字から始めればいいのか」が分かりません。

「連続データ」ダイアログを表示

まず、「ホーム」タブ > 「フィル」 > 「連続データの作成」を選択します。

※ [Alt]→[H]→[F]→[I]→[S] でも表示可能です。

設定

連続データ」ダイアログが表示されます。

「範囲」は「
「種類」は「加算
「増分値」は「1
「停止値」は「10000
と設定します。

OK」を押します。

解説

連続データの作成:

指定したルールに基づいて、連続した数値や日付データを生成します。

加算だけでなく、乗算での増加も可能です。

日付単位(日、週、月、年)での連続データ作成にも対応しています。

メリット&デメリット

メリット:

  • 操作が非常に簡単で、関数などの知識は不要です。
  • 最も手早く基本的な連番を作成できる方法の一つです。

デメリット:

  • 作成できる連番のパターンに限りがあります。
  • 例えば、奇数のみの連番や、3行ごとなどの複雑な連番は作成できません。

方法2:数式とコピー&ペーストを活用する

考えかた

まず、最初のセル「A1」に開始値「1」を入力します。

次に、その下のセルに「すぐ上のセルの値 +1」という数式を入力します。

最後に、その数式を目的の範囲「A10000」までコピー&ペーストします。

手順

A1セルに連番の開始値「1」を入力

はじめに、起点となるA1セルに、
開始値である「1」を入力します。

A2セルに数式 「=A1+1」 を入力

次に、入力したら、[Enter]を押して確定します。
A2セルには「2」が表示されます。

=A1+1は、「すぐ上のA1セルの値に1を加える」という意味です。

数式をコピー

続いて、A2セルが選択された状態で、[Ctrl]+[C] を押してコピーします。

コピーされると、選択範囲の枠線が点滅します。

貼り付け先の範囲を選択

今度は、この数式を貼り付けたい範囲(A3からA10000まで)を選択します。

10000行もスクロールするのは大変です!

そんなときは、Excelウィンドウ左上にある「名前ボックス」を使います。

名前ボックスに「A10000」と入力します。

ここで、[Enter]ではなく、
[Shift]を押しながら[Enter]を押します。

すると、現在アクティブなセルA2からA10000までが選択されます。

数式の貼り付け

最後に、[Ctrl]+[V] を押して、
コピーした数式を貼り付けます。

解説

相対参照:

=A1+1 のような数式をコピーすると、
貼り付け先のセルに応じて参照セルが自動的に変化します。

例えば、A3に貼り付けられる数式は =A2+1 となります。

これを「相対参照」と呼び、Excelの便利な機能の一つです。

名前ボックスによる範囲選択:

マウスでドラッグするには広すぎる範囲も、
名前ボックスを使えば一瞬で選択できます。

アクティブセルから指定セルまでを選択する場合は、
[Shift]+[Enter]を使います。

メリット&デメリット

メリット:

  • 単純な加算だけでなく、複雑な規則の連番も作れます。
    (例 =A1+2 なら偶数/奇数の連番)
  • Excelの基本的な操作(数式入力、範囲選択、コピー&ペースト)だけで実行できます。

デメリット:

  • セルには数式が入力されます。値にするには値貼り付けが必要です。
  • 途中の行を削除すると、それ以降のセルで参照エラー(#REF!)が発生する可能性があります。
    (4行目を削除した場合。下の画像。)

方法3:ROW関数と一括入力を活用する

考えかた

セルの行番号を返す ROW() 関数を利用します。

連番を入力したい範囲をすべて選択し、
そこに =ROW() という数式を一括で入力します。

これにより、各セルにそのセルの行番号が表示され、
結果的に連番となります。

手順

範囲の選択

まず、連番を入力したい範囲、A1からA10000までを選択します。

A1セルを選択した状態で、名前ボックスに「A10000」と入力します。

ここで、[Enter]ではなく、
[Shift]を押しながら[Enter]を押します。

すると、A1からA10000までが選択されます。

別の方法:名前ボックスに「A1:A10000」と入力→[Enter]を押す

このように範囲を選択することもできます。

数式を一括入力

範囲が選択された状態のまま、
数式バーに =ROW() と入力します。

[Ctrl]を押しながら[Enter]を押します。

各セルには自身の行番号が表示され、
1から10000までの連番が完成します。

解説

ROW関数:

ROW() は、引数を省略した場合、
その関数が入力されているセルの行番号を返します。

例えば、A1セルに入力すれば「1」を、
A15セルに入力すれば「15」を返します。

[Ctrl]+[Enter] ショートカット:

複数のセルを選択した状態で数式や値を入力した後、[Ctrl]+[Enter]を押します。

これにより、選択範囲のすべてのセルに同じ内容を一括で入力できます。

大量のセルに同じ処理をしたい場合に非常に効率的です。

メリット&デメリット

メリット:

  • 手順が比較的少なく、操作がシンプルです。
  • 行を挿入・削除しても連番を維持します。

デメリット:

  • 例えば、5から始まる連番にしたい場合は =ROW()+4 のような調整が必要です。
  • 方法2と同様に、セルには数式が入力されます。値にするには値貼り付けが必要です。

方法4:SEQUENCE関数で一発作成 (Microsoft 365 /Excel 2021以降)

考えかた

比較的新しいバージョンのExcelで利用可能な SEQUENCE 関数を使います。

この関数は、指定したサイズの連続した数値の配列を生成します。

一つのセルに数式を入力するだけで、目的の連番を一瞬で作成できます。

手順

まず、連番を開始したいセル、ここではA1セルを選択します。

次に、数式バーに =SEQUENCE(10000) と数式を入力します。

最後に、[Enter]を押します。これだけで完成です!

解説

SEQUENCE関数:

=SEQUENCE(行数, [列数], [開始], [増分]) という書式で使用します。

行数は必須ですが、それ以外は省略可能です。

また、縦方向だけでなく、横方向や二次元の連番配列も作成できます。

スピル (Spill):

SEQUENCE のような、複数の値を返す関数(動的配列関数)の結果が、
自動的に隣接する空のセルに展開される機能を「スピル」と呼びます。

出力先のセル範囲に他のデータがあると #スピル! エラーになります。

メリット&デメリット

メリット:

  • 最も簡単かつ高速な方法です。数式一つで完結します。
  • 数式が入力されるのは最初のセルだけなので、管理がしやすい。
  • 開始値や増分値の変更も、A1セルの数式を修正するだけで済みます。

デメリット:

  • Microsoft 365 またはExcel 2021 以降のバージョンが必要です。
  • Excel 2019 以前のバージョンでは使用できません。

参考までに

次のようなやり方もあります。

A1セルに =ROW(1:10000) と入力する

しかし、SEQUENCE関数が使える以上、この方法を使うことはまずありません。
なので、解説は省略します。

方法5:VBA(マクロ)で作成する

考えかた

Excelの機能を自動化できるVBAVisual Basic for Applications)を使用します。

プログラム内で繰り返し処理(ループ)を使い、
指定した範囲のセルに順番に値を書き込んでいきます。

より高度な方法として、一度配列にデータを格納し、
最後にセル範囲へ一括で書き出す方法もあります。

手順

VBE(Visual Basic Editor)を開く

キーボードの[Alt]キーを押しながら[F11]キーを押して、VBEを開きます。

標準モジュールを挿入

VBEのメニューバーから「挿入」>「標準モジュール」を選択します。

画面右側に、コードを入力するための大きな空白のウィンドウ(コードウィンドウ)が表示されます。

VBAコードをコピー&ペーストする

以下のサンプルコードをすべてコピーし、
表示されたコードウィンドウに貼り付けます。

Sub himatsubushi003_01()

    Dim i As Long

    For i = 1 To 10000 ' 1から10000まで繰り返す

        Cells(i, 1).Value = i ' iをA列に入力

    Next i ' 次の値に進む

End Sub

マクロを実行

コードを貼り付けたら、VBEのメニューバーの下にある実行ボタンをクリックするか、[F5]キーを押します。

すると、一瞬で連番が作成されます。

別のやり方(コードの書き方)

Do~Loopを使用して次のような書き方もできます。

Sub himatsubushi003_2()

    Dim i As Long
    
    i = 1 ' 初期値を1に設定
    
    Do While i <= 10000 ' iが10000以下の間、繰り返す
        
        Cells(i, 1).Value = i ' iをA列に入力
        i = i + 1 ' iを1増やす
        
    Loop ' 条件を満たす限りループを繰り返す
    
End Sub

ForNextDoLoopはVBAにおける基本的なループ処理であり、
両方とも習得することを推奨します。

また、処理速度をさらに向上させるには、
配列にデータを格納し、
最後にその配列をセル範囲に一度に貼り付ける方法が有効です。

VBAでセルに値を書き込む際、セル一つ一つに書き込むよりも、
配列に値を格納してから最後にまとめてセル範囲に書き込む方が、処理速度が大幅に向上します。

次のように書くこともできます。

Sub himatsubushi003_03()

    Dim i As Long
    Dim ary(1 To 10000) As Long ' 1から10000の要素を持つ一次元配列を宣言
    
    For i = 1 To 10000
        ary(i) = i ' 配列に連番を格納
    Next i
    ' 一次元配列をTranspose関数で行列変換し、A1:A10000範囲に一括で書き出す
    Range("A1:A10000").Value = Application.Transpose(ary)
    
End Sub

解説

VBA (Visual Basic for Applications):

 ExcelなどのMicrosoft Office製品に搭載されているプログラミング言語です。

 定型的な作業や複雑な処理を自動化するのに役立ちます。

ForNext ループ:

指定した回数だけ処理を繰り返すための基本的な構文です。

For i = 1 To 10000 は、
変数 i1から10000まで1ずつ増やしながら繰り返すことを意味します。

Cells(行番号, 列番号):

特定のセルを指定するための一つの方法です。
Cells(i, 1) は、i行目の1列目(つまりA列)のセルを指します。

高速化のためのヒント(配列の利用):

セルへの書き込みは、一つずつ行うよりも、
まとめて行う方が高速です。

大量のデータを扱う場合、
まずVBA内の「配列」という変数にデータを格納します。

最後に、その配列の内容を目的のセル範囲に一括で書き出すことで、
処理速度が大幅に向上します。

メリット&デメリット

メリット:

  • 一度コードを作成すれば、ボタン一つで何度でも同じ処理を実行可能。
  • 連番作成だけでなく、より複雑な条件のデータ生成や書式設定なども自動化可能。
  • 配列を使う方法なら、他の方法と比較しても非常に高速な処理が可能。

デメリット:

  • VBAの基本的な知識(VBEの開き方、コードの貼り付け方、実行方法など)が必要。
  • コードの記述ミスがあると、エラーが発生したり、意図しない動作をしたりする可能性がある。
  • 他人にファイルを渡す場合、相手がマクロを有効にする必要がある。

まとめ:連番作成はExcel活用の第一歩

今回は、ExcelでA列に1万行の連番を作成するための、5つの方法をご紹介しました。

  • 方法1:連続データの作成機能 – 最も手軽で基本的な方法
  • 方法2:数式とコピー&ペースト – 相対参照を理解する良い練習
  • 方法3:ROW関数と一括入力 – 関数とショートカットの組み合わせ
  • 方法4:SEQUENCE関数 – 最新Excelの強力な機能 (対応バージョン限定)
  • 方法5:VBA(マクロ) – 自動化と高速処理、応用性の高さ

たかが連番作成、されど連番作成。

たった一つの作業でも、
これだけいろいろなやり方があるのが、Excelの面白さです。

しかし、それぞれの方法には、得意な場面や注意点があります。

状況に応じて一番合った方法を選ぶことが、
作業を効率よく進めるポイントになります。

この記事が、皆さんのExcelスキルアップや、
日々の作業をちょっと楽しく・効率的にするヒントになれば幸いです。

タイトルとURLをコピーしました