要点 —
SEQUENCEは数値の配列を何もないところから作り、範囲にスピルします。 構文は=SEQUENCE(行, [列], [開始], [増分])。=SEQUENCE(5)は下方向に1,2,3,4,5、=SEQUENCE(1,12)は右方向に1…12、第3・第4引数が開始値と増分を決めます。これは高機能な フィルハンドルではなく、連番・日付シリーズ・グリッドを他の数式へ供給するエンジンで、 データが増えても生き続けます。スピル先がふさがっていると#SPILL!。Excel 365 / 2021 以降。
=SEQUENCE(5) ' 1,2,3,4,5 を1列に
=SEQUENCE(ROWS(データ), 1, 1, 1) ' データ行ごとに連番を、自動更新で
フィルハンドルは30年間 1, 2, 3, … を作ってきましたが、書くのは固定値——データが変われば
番号がずれます。SEQUENCE は同じ列を数式で作るので自動でサイズが変わり、配列を返すので
他のどの動的配列数式にも供給できます。この2つ目の使い方こそ、存在意義です。
この記事でわかること
- 引数の順番——
行, 列, 開始, 増分——と、それがつまずく理由 - 生きた日付シリーズの作り方(カレンダー、スケジュール、期日)
- データと共に伸縮する連番に
SEQUENCEを使う #SPILL!が出る理由と直し方SEQUENCEがフィルハンドルやROW()を置き換える場面
考え方の軸:フィルハンドルではなくエンジン
フィルハンドルでは値を一度打つだけ、SEQUENCE では永遠に再計算する列を記述します。ただ本当
の転換はこれです——SEQUENCE は配列を返すので、最終的な答えになることはまれで、他の何かが
消費する正しい大きさのグリッドを生成する部品です。INDEX・日付計算・スピル計算の下にある
エンジンだと考えてください。
' 静的、行を足すと壊れる: 1,2,3 を手でドラッグ
' 生きている、表に合わせて伸縮:
=SEQUENCE(ROWS(売上)) ' 1..N(N = 売上の行数)
すべての鍵となるルール:行、列、開始、増分
SEQUENCE の意外な挙動はすべて引数の順番から来ます。SEQUENCE(行, [列], [開始], [増分])
——行が先で、開始値ではありません。SEQUENCE(開始, 増分) を期待すると、頼んでいない高い列
が出てきます。
=SEQUENCE(5) ' 5行: 1,2,3,4,5
=SEQUENCE(5, 1, 10, 5) ' 10から増分5で5行: 10,15,20,25,30
=SEQUENCE(1, 12) ' 1行・12列: 1..12 を横に
=SEQUENCE(3, 4) ' 3x4のグリッド、行ごとに 1..12 を充填
順番が体に入れば、2次元グリッドはタダで手に入ります——九九表は
=SEQUENCE(9) * SEQUENCE(1,9)、ドラッグ不要です。
生きた日付シリーズを作る
SEQUENCE が最も役立つ使い方です。Excel では日付はただの数値なので、日付シリーズは 増分 を
1日にして日付から始めた SEQUENCE です。
=SEQUENCE(31, 1, DATE(2026,1,1), 1) ' 2026年1月の各日(日付として書式設定)
=EDATE(DATE(2026,1,1), SEQUENCE(12,1,0)) ' 毎月1日、カレンダー的に正確
落とし穴が1つ:SEQUENCE は内部のシリアル値を返すので、スピル範囲を日付として書式設定しないと
46023, 46024, … が見えます。毎月1日や月末は、~30 ずつ進めるとずれるので EDATE で包みます。
#SPILL! は数式ではなく「場所」の問題
SEQUENCE は出力サイズを正確に把握しています。必要なセルに何かがあると、Excel は配列を置けず
#SPILL! を返します。数式は正しく、ふさがっているのは置き場所です。セルをクリックすると枠で
範囲が示されるので、そこを空ければ数値が現れます。SEQUENCE は ROWS(データ) のような引数で
サイズが決まるので、下方向に余裕を持たせてください。
判断:SEQUENCE がドラッグや ROW() を置き換えるとき
1, 2, 3, … をフィルハンドルでドラッグしているなら、それは古くなる固定値です——
SEQUENCE(ROWS(データ)) は行の増減でも正しいまま。ROW()-ROW($A$1)+1 をカウンターとして
打っているなら、SEQUENCE は揮発性の ROW() なし、行挿入で壊れることなく同じことを言います。
正直な限界:二度と変えない固定数のリストならフィルハンドルの方が速い。データを追従すべき
ものはすべて SEQUENCE の勝ち——配列を組み立てるときの VSTACK
や TAKE の自然な相棒です。
ExcelMaster の使いどころ
SEQUENCE の作業の多くは、もっと大きな依頼の中に隠れています:データを足したら ID が振り直さ
れるように連番を、または 2026年の配送カレンダーを週1行で。ExcelMaster は、正しい引数
順・EDATE での日付包み・表からのサイズ決定込みで SEQUENCE を日本語の指示から書き、スピル
できる場所に置きます。列はあなたが説明し、生成器は任せられます。
よくある質問
Excelで連番を生成するには?
=SEQUENCE(10) で1列に 1..10、=SEQUENCE(10, 1, 5, 5) で5から増分5。結果は自動でスピルし、
個数を変えればサイズも変わります。
SEQUENCEで日付のリストを作るには?
日付から始めて1日ずつ進めます:=SEQUENCE(31, 1, DATE(2026,1,1), 1)。範囲を日付として書式設定
します。毎月1日は EDATE で包みます:=EDATE(DATE(2026,1,1), SEQUENCE(12,1,0))。
SEQUENCEの引数の順番は?
SEQUENCE(行, [列], [開始], [増分]) ——行が先、次に列、次に開始値、次に増分。開始 が先と
思い込むのが最も多い誤りです。
SEQUENCEが#SPILL!を返すのはなぜ?
埋めるべきセルを値・ラベル・結合セルがふさいでいます。数式のセルをクリックしてスピル範囲を 確認し、そこを空ければ結果が現れます。
SEQUENCEはExcel 2016や2019で使える?
使えません。SEQUENCE は Excel 365 / 2021 以降が必要です。旧版ではフィルハンドルか ROW()
ベースの数式を使います。
検証環境
検証環境: Excel 365(Windows 11)— 最終確認 2026-06-17。
関連ガイド: ExcelのVSTACK・HSTACK関数 · ExcelのTAKE・DROP関数 · ExcelのFILTER関数 · ExcelのSORT関数
