SEQUENCE関数の使い方|Excelで連番・日付を自動生成する方法

Excel
この記事は約8分で読めます。
成人男性
成人男性

毎月のシフト表、1〜31の日付をいちいち手で打ってる…。
オートフィルでドラッグすると途中でズレるし、この作業って正直ムダな気がする…。

ノア
ノア

SEQUENCE関数なら数式1行で終わるにゃ。
ドラッグ0回・手入力0回。「連番製造マシン」みたいな関数にゃ!

ヒイラギ
ヒイラギ

私も公務員時代、毎月の勤務表の日付入力に地味に時間を取られていました。
SEQUENCE関数を覚えてからは、この手の「連番・日付打ち」作業がほぼゼロになったと感じています。

ヒイラギ
ヒイラギ

この記事では、基本の構文から実務でそのまま使えるテンプレまで、コピペで試せる形で解説します。

📋この記事でわかること

  • SEQUENCE関数の構文と4つの引数の意味
  • 連番・日付リスト・カレンダーの土台を「数式1行」で作る方法
  • TODAY・TEXT・EOMONTH・LETとの組み合わせ実例5つ
  • #SPILL!エラーが出たときの原因と直し方
  • シフト表・請求書番号など、実務での使いどころ

📌結論:SEQUENCE関数はこの3行だけ覚えればOK

  • ✅ =SEQUENCE(10) → 1〜10の連番が縦に一瞬で並ぶ
  • ✅ =SEQUENCE(7,,TODAY(),1) → 今日から7日分の日付リストが自動生成
  • ✅ 使えるのはMicrosoft 365/Excel 2021以降(「スピル」対応バージョン)
ノア
ノア

「何行×何列を・いくつから・いくつ刻みで」の4つを指定するだけにゃ。
まずはこの3行をコピペして動かしてみるのが一番早いにゃ。

🛠️SEQUENCE関数とは?構文と引数

=SEQUENCE(行数, [列数], [開始値], [増分])
引数意味省略した場合
行数何行分の連番を作るか省略不可
列数何列分出力するか1列
開始値いくつからスタートするか1
増分いくつずつ増やすか1

 数式を入れたセルから自動的に範囲が広がって結果が表示される仕組みを「スピル」と呼びます。数式は先頭の1セルにしか入っていないのに、結果が複数セルにあふれて表示されるイメージです。

成人男性
成人男性

スピル…?なんだか難しそう…ですね。

ヒイラギ
ヒイラギ

名前は難しそうですが、やることは「1セルに数式を入れるだけ」です。むしろ従来より操作は減りますので、安心して進めてください。

※SEQUENCE関数はExcel 2019以前では使えません。お使いのExcelが古い場合は、ROW関数(=ROW(A1)を下にコピー)で代用できます。


基本テク:1〜10までの連番を作る

=SEQUENCE(10)

出力結果

1行で、これ。マウス操作はいりません。

美俊
美俊

次からは、1、2って順番に入れてドラッグしなくてもいいんだ!

今日から7日間の予定表を作る

=SEQUENCE(7,,TODAY(),1)
  • TODAY()は「今日の日付」を出す関数
  • SEQUENCEで「1日ずつ増やしていく」

この作業をやってくれます。
※TODAY関数のため、更新されるので、作成後列選択で値貼り付けを推奨します

これで、今日から1週間の予定表がすぐ作成可能です。


行・列で自由に出力したいとき

たとえば、3行×4列の連番表を作りたい。

美俊
美俊

意外と表の形で指定した順番に並べるの面倒なんだよな。。。

=SEQUENCE(3, 4)

地味だけど超使える。罫線引いてカレンダー化も可能。


実務で使える組み合わせ5選(私の実例つき)

 私は公務員でも、施工管理の仕事でもら、Excelやパワークエリで業務効率化を行ってきました。ここからは、実務でそのまま使い回せる組み合わせを紹介します。

実例①:今日から7日間の予定表を作る

=SEQUENCE(7,,TODAY(),1)
  • TODAY()は「今日の日付」を出す関数
  • SEQUENCEで「1日ずつ増やしていく」

この作業をやってくれます。
※TODAY関数のため、更新されるので、作成後列選択で値貼り付けを推奨します

これで、今日から1週間の予定表がすぐ作成可能です。

※結果が「45841」のような数字で出たら、セルの表示形式を「日付」に変更してください。日付はExcel内部では連番(シリアル値)で管理されているためです。
※TODAY関数は翌日開くと日付が動きます。予定表として固定したい場合は、範囲をコピー→「値貼り付け」を推奨します。

実例②:曜日ごとのシフト表テンプレ

=TEXT(SEQUENCE(7,,TODAY(),1), "aaaa")

TEXT関数と組み合わせて「曜日だけ抽出」も可能!
  簡単なシフト表や予定表のベースとして使える。

ヒイラギ
ヒイラギ

TEXT(セル値,”aaaa”)で、曜日に変更できるよ!


実務③:毎月1日〜月末日までを自動生成

=SEQUENCE(DAY(EOMONTH(TODAY(),0)),,DATE(YEAR(TODAY()),MONTH(TODAY()),1),1)
  • EOMONTH:その月の月末日を取得
  • DAY:月末日から「その月が何日あるか」を出す
  • DATE:月初(1日)からスタート

「その月の全日付」が毎月自動更新されるリストを一発で生成!

実務④:請求書・管理番号の連番

="INV-"&TEXT(SEQUENCE(20,,1,1),"0000")

「INV-0001〜INV-0020」のような管理番号も1行で作れます。
見積書・請求書のNo.振り直し作業から解放されます。

実務⑤:LET関数で「読める数式」にする

③の数式、正直パッと見て意味が分かりにくいですよね。
そこでLET関数の出番です。

=LET(月初, DATE(YEAR(TODAY()),MONTH(TODAY()),1),
     日数, DAY(EOMONTH(月初,0)),
     SEQUENCE(日数,,月初,1))

「月初」「日数」と名前を付けるだけで、後から見返しても意味が分かる数式になります。LET関数の詳しい使い方はこちらの記事で解説しています。

ノア
ノア

作った日付リストから「平日だけ」「最初の5行だけ」を取り出したいときは、DROP関数・TAKE関数と組み合わせると便利にゃ。


こんな場面で活躍!

  • ✅ カレンダー作成
  • ✅ 出勤簿やシフト表
  • ✅ 見積書や請求書の連番整理
  • ✅ 予定リストのテンプレ化
  • ✅ ガントチャートの土台づくり

日付や番号を打つだけで30分かかる作業」が、わずか1行の関数で自動化されます。


どれくらい時短になる?手入力との比較

事務員研修で教えたときの体感ベースですが、目安を表にしました。

作業手入力・ドラッグSEQUENCE関数
1〜31の日付リスト(毎月)約3〜5分+ズレ確認数秒(自動更新)
曜日つきシフト表の土台約10〜15分約1分
請求書番号100件の振り直し約10分+ミスのリスクあり数秒
月が変わったときの作り直し毎月発生数秒(自動)

失敗談

 私は最初、TODAY関数入りの予定表をそのまま保存してしまい、翌日開いたら日付が1日ズレていて青ざめたことがあります。
「動く日付」と「固定したい日付」を区別して、固定したい表は値貼り付けする。
これだけは覚えておいてください。

#SPILL!エラーが出たときの対処法

SEQUENCE関数でつまずくポイントはほぼこれです。

原因対処法
結果があふれる範囲に既にデータがある邪魔しているセルを削除・移動する
テーブル(Ctrl+T)の中で使っているテーブルの外で使う
(テーブル内はスピル不可)
Excel 2019以前を使っているSEQUENCE自体が非対応。
ROW関数などで代用
ヒイラギ
ヒイラギ

#SPILL!は「あふれる場所が確保できません」というお知らせに過ぎません。範囲を空ければすぐ直りますよ。

よくある質問(Q&A)

Q1. Excel 2016や2019でも使えますか?

A. 使えません。

 SEQUENCEはMicrosoft 365とExcel 2021以降の関数です。
旧バージョンでは=ROW(A1)を下方向にコピーする方法で連番を代用できます。

Q2. スピルで出た結果の一部だけ消せますか?

A. できません。

 数式は先頭セルにしか入っていないため、修正・削除は先頭セルで行います。一部だけ加工したい場合は、値貼り付けしてから編集してください。

Q3. 横方向(1行)に連番を並べたいのですが?

A. 行数を1にして、列数を指定します。
例:=SEQUENCE(1, 10)で横に1〜10が並びます。

Q4. 日付のはずが「45841」みたいな数字になります。

A. 表示形式の問題です。

 範囲を選択して、ホームタブの表示形式を「短い日付形式」に変更してください。

Q5. 生成した連番はデータ件数に合わせて変えられますか?

A. 可能です。

 COUNTA関数でデータ件数を数え、=SEQUENCE(COUNTA(B2:B100))のように行数へ渡せば、データの増減に連動する連番になります。COUNT系関数の使い分けはこちらをどうぞ。

🧩まとめ

  • SEQUENCE関数=連番・日付の「連続データ」を数式1行で作る関数
  • 引数は「行数・列数・開始値・増分」の4つだけ
  • TODAY・TEXT・EOMONTHと組めば、予定表・シフト表・月次カレンダーが自動更新可能
  • LET関数で数式を読みやすく、DROP/TAKEで必要な部分だけ抽出
  • #SPILL!エラーは「あふれる場所」を空ければ解決

 SEQUENCEで振った連番は、INDEX関数・MATCH関数と組み合わせた表引きでも活躍します。検索系の関数をまだ押さえていない方はこちらもどうぞ。

ヒイラギ
ヒイラギ

「手でやればできること」を関数に任せると、時間だけでなくヒューマンエラーも減ります。
私はその浮いた時間を、他の業務に充ててきました。
まずは=SEQUENCE(10)の1行から試してみてください。応援しています。

ノア
ノア

Excel効率化で浮いた時間の使い道に迷ったら、この記事も読んでほしいにゃ。

その他のExcel記事一覧はこちら

📱日々の気づきはSNSでも発信しています。
Threads:https://www.threads.com/@h.bisyun250401
note(ノア担当):https://note.com/quirky_weasel845

参考文献

免責事項

本記事は執筆時点の情報に基づいており、内容の正確性・完全性を保証するものではありません。Excelの機能・画面はバージョンやアップデートにより異なる場合があります。数式の利用は必ずご自身の環境で動作確認のうえ、自己責任でお願いいたします。また、本記事は特定の成果や収益を保証するものではありません。

コメント

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