スプレッドシートのSEQUENCE関数の使い方|連番・日付・2次元配列を自動生成

スポンサーリンク

「1, 2, 3…と連番を手入力するのが面倒」「日付の一覧をサッと作りたい」。スプレッドシートで表を作っていると、こんな場面は多いですよね。

オートフィルで引っ張る方法もありますが、行の追加・削除のたびにズレてしまいます。数が多いと確認も大変です。

そんなときに便利なのが SEQUENCE関数 です。行数と開始値を指定するだけで、連番や日付の一覧を自動生成してくれます。

この記事では、SEQUENCE関数の基本から、日付・時刻連番の作り方、FILTER・SORTとの組み合わせまで実例つきで紹介します。

SEQUENCE関数とは?

SEQUENCE関数は、指定した行数・列数に応じて 連続した数値の配列を自動生成する 関数です。
読み方は「シーケンス関数」で、英語の「sequence(連続・順序)」が語源です。

たとえば =SEQUENCE(5) と入力すれば、1〜5の連番が縦方向に一括で出力されます。

先頭セルに数式を入力するだけで、結果が自動で展開されます。ARRAYFORMULA関数を使う必要はありません。

NOTE

SEQUENCE関数はGoogleスプレッドシートと Excel(Microsoft 365 / Excel 2021 以降)で使えます。ExcelのSEQUENCE関数も構文は同じです。

SEQUENCE関数の書き方(構文と引数)

構文

=SEQUENCE(行数, [列数], [開始値], [増分量])

引数の意味と省略ルール

引数必須/任意説明デフォルト値
行数必須生成する行数(例: 5
列数任意生成する列数(例: 31
開始値任意最初の値(例: 01001
増分量任意値の増え幅(例: 101

TIP

必須は「行数」だけです。=SEQUENCE(5) なら、1列・開始値1・増分1で「1, 2, 3, 4, 5」が縦に並びます。

SEQUENCE関数の基本的な使い方

縦方向の連番を作る

もっともシンプルな使い方です。空いているセル(たとえばA2)に次の数式を入力します。

=SEQUENCE(5)

結果はこうなります。

A列
1
2
3
4
5

行数に 5 を指定しただけで、1〜5の連番が自動で展開されました。

横方向の連番を作る

列数を指定して行数を 1 にすると、横方向に展開されます。

=SEQUENCE(1,5)
A列B列C列D列E列
12345

月ごとのヘッダーや曜日ラベルを並べたいときに便利です。

2次元配列の連番を作る

行数と列数の両方を指定すると、2次元の配列が生成されます。

=SEQUENCE(3,4)
A列B列C列D列
1234
5678
9101112

左から右、上から下へと行優先で番号が埋まります。3行×4列で合計12個の連番ですね。

実践的な使い方・応用例

パターン1:日付の連番を自動生成する

SEQUENCE関数は日付の連番にも使えます。開始値にDATE関数を指定しましょう。

=SEQUENCE(30,1,DATE(2025,4,1),1)

この数式で、2025年4月1日から30日分の連続した日付が生成されます。

ただし、結果はシリアル値(数値)で表示されます。セルを選択して「表示形式」→「日付」に変更してください。

TIP

日付は "2025/04/01" のように引用符つきの文字列でも指定できます。=SEQUENCE(5,1,"2025/04/01") のように書けばOKです。引用符を忘れると 2025/04/01/ が除算演算子として扱われ、数値として計算されてしまうので注意してください。

月初日の一覧を作りたい場合は、ARRAYFORMULA関数と組み合わせます。

=ARRAYFORMULA(DATE(2025, SEQUENCE(12), 1))

この数式で2025年1〜12月の月初日が一覧で出力されます。

パターン2:時刻連番で予定表を作る

タイムスケジュールを作るときに便利な使い方です。

=SEQUENCE(16,1,TIME(8,0,0),TIME(1,0,0))

8:00から1時間刻みで、16個の時刻が生成されます。8:00〜23:00のタイムテーブルが一発で完成です。

日付と同じく、結果はシリアル値になります。「表示形式」→「時刻」に変更してください。

パターン3:降順・ステップ付き連番

増分量に負の値を指定すると、降順の連番を作れます。

=SEQUENCE(5,1,10,-1)
A列
10
9
8
7
6

カウントダウンやランキング番号に使えます。

増分量を変えれば、飛び飛びの数値も簡単です。

=SEQUENCE(5,1,0,10)

結果は「0, 10, 20, 30, 40」です。10刻みの連番が生成されます。

パターン4:FILTER・SORTとの組み合わせ

SEQUENCE関数は他の配列関数と組み合わせると、さらに活用の幅が広がります。

SEQUENCE + FILTERで偶数だけを抽出する例です。

まず、SEQUENCE関数で1〜20の連番を作ります。そこからFILTER関数で偶数だけを抽出します。

=FILTER(SEQUENCE(20), MOD(SEQUENCE(20),2)=0)

結果は「2, 4, 6, 8, 10, 12, 14, 16, 18, 20」です。

SEQUENCE + SORTでランダム順のリストを作る例です。

SORT関数とRANDARRAY関数を組み合わせて、連番をシャッフルできます。

=SORT(SEQUENCE(10), RANDARRAY(10), TRUE)

抽選やランダム出題など、順序をランダムにしたい場面で使えます。

ROW関数との違い・使い分け

連番を作る方法としては、ROW関数もよく使われます。どう使い分ければよいでしょうか。

比較項目SEQUENCE関数ROW関数
仕組み指定した件数の配列を一括生成セルの行番号を取得
行の追従しない(固定件数)する(行の挿入・削除に自動対応)
ARRAYFORMULA不要(自動で展開)複数行に展開するには必要
2次元配列作れる(行×列を指定)作れない
日付・時刻開始値を指定して生成できる直接は生成できない

使い分けのポイントはこうです。

  • 行の増減に追従させたい → ROW関数が向いています。データ行に1対1で連番を振るケースです
  • 決まった件数を一括で生成したい → SEQUENCE関数が向いています。日付一覧やタイムテーブルなど、固定の連番が欲しいケースです

迷ったら、「データの行数に依存するか」で判断してみてください。依存するならROW関数、依存しないならSEQUENCE関数です。

よくあるエラーと対処法

エラー原因対処法
#REF!結果を展開するセルにデータがある展開先のセルをクリアするか、数式を空き領域に移動する
#NUM!行数に0や負の数を指定した行数・列数には1以上の正の整数を指定する
#VALUE!引数に文字列など無効な値がある数値・日付以外の値が入っていないか確認する

TIP

#REF! エラーは配列関数で最もよくあるエラーです。SEQUENCE関数の結果が展開される先にデータがあると発生します。出力先の下方向・右方向に十分な空きを確保してください。

まとめ

この記事では、GoogleスプレッドシートのSEQUENCE関数の使い方を解説しました。

  • SEQUENCE関数: 指定した行数・列数の連番を自動生成する
  • 基本の使い方: =SEQUENCE(5) で1〜5の縦方向連番
  • 横方向: =SEQUENCE(1,5) で横に展開
  • 2次元配列: =SEQUENCE(3,4) で3行4列のグリッド連番
  • 日付連番: =SEQUENCE(30,1,DATE(2025,4,1),1) で日付一覧
  • ROW関数との違い: 固定件数の一括生成はSEQUENCE、行追従はROW

まずは =SEQUENCE(5) から試してみてください。連番の手入力から解放されますよ。


この記事を書いた人

biz-tactics編集部。事務職の現場で本当に使えるExcel・スプレッドシート・AIの技を発信しています。

関連記事

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