ラベルラベル

動的配列・スピル入門

SEQUENCE関数を見て理解する

行数・列数・開始値・増分量を指定し、右へ順番に進む連番の表をまとめて作る関数です。

3つのポイント

  1. 行数・列数で表の大きさを決める
  2. 開始値から増分量ずつ進める
  3. 右から次の行へ連番を生成してスピルする
例題Excel仕様

3行×3列に、10から2ずつ進む連番を作る

サンプル数式

  • 行数
  • 列数
  • 開始値
  • 増分量

いまの結果:

3行 × 3列
計算結果
結果セル:E2スピル範囲:E2:G4

先頭行:10 | 12 | 14

入力・条件:4項目
  • 行数B2:3
  • 列数B3:3
  • 開始値B4:10
  • 増分量B5:2
この結果になる理由

3行×3列を、10から2ずつ、右へ進み行末で次の行へ埋めます。結果範囲はE2:G4、最後の値は26です。

例を試す

サンプルデータ

行数や増分量を変えてみよう

※ Excel と Google スプレッドシートで結果や挙動が異なる場合、Excel の仕様を基準にしています。

「3行×3列に、10から2ずつ進む連番を作る」のサンプルデータ。引数番号は正式引数と教材要素の対応、小さな角丸数字は処理順を表します。
ABCDEFG
1引数値  結果  
2行数  101214
3列数  161820
4開始値  222426
5増分量     
6       
行数列数開始値増分量結果セル
①・②・③・④ 正式引数 / 教材要素1–6 処理の流れ

B2、B3、B4、B5に値を入力すると、結果と処理順が変わります。

4つの引数

色付きの丸数字は、サンプル数式と引数ガイドで同じ引数を示しています。表にも同じ番号があれば、その引数で指定しているセルを示します。

  1. B2表のセル: B2

    結果を何行にするかを指定します。

  2. B3表のセル: B3

    結果を何列にするかを指定します。

  3. B4表のセル: B4

    最初に表示する数値です。

  4. B5表のセル: B5

    次のセルへ進むたびに加える数値です。

この数式を日本語にすると

B2の行数とB3の列数で表の大きさを決め、B4の10からB5の2ずつ進む値を右へ並べます。E2:G4に10から26までの連番を返します。

この説明は、最初に表示されているサンプルデータをもとにしています。入力値を変更しても説明文は変わりません。

処理の流れ

手順1〜6を順番に確認しましょう。表内の小さな角丸数字は、対応する手順を示します。

  1. 行数を決める

    B2

    行数:3 → 3行。

  2. 列数を決める

    B3

    列数:3 → 3列。

  3. 開始値を確認する

    B4

    開始値:10。

  4. 増分量を確認する

    B5

    増分量:2。

  5. 右へ進み、次の行へ埋める

    E2:G4

    E2:10 → F2:12 → G2:14 → E3:16。開始値+(何番目か−1)×増分量で生成します。

  6. スピル結果を確認する

    E2:G4

    3行×3列を、10から2ずつ、右へ進み行末で次の行へ埋めます。結果範囲はE2:G4、最後の値は26です。

対応アプリ

  • Excel
  • Google スプレッドシート

関数自体が対応するアプリです。教材例の数式や再計算が、両アプリで同じように動くことを保証するものではありません。

この例の注意点

  • 連番やサンプルデータ、日付シリアルの一覧をまとめて作るときに使います。
  • 列数・開始値・増分量を省略すると1です。Excelでは行数を空欄にしても他の引数を指定すると1行になり、引数が全くないSEQUENCE()は入力を確定できません。
  • セルを消した真の空白は0へ変換し、引数の省略とは区別します。空文字の数式や文字列は#VALUE!です。TRUEは1、FALSEは0へ変換します。
  • 行数・列数の小数部は切り捨てます。0以下など一部の無効サイズは、この教材ではExcelの結果の再現を保留して「対象外」と表示します。実測した行数0.9・列数2・開始値1・増分量1は#CALC!を返します。
  • 増分量は負数や0も指定できます。開始値+(何番目か−1)×増分量の順で、右へ進み、行末で次の行へ移ります。
  • この教材はExcel 2021基準です。Sheetsとは途中空欄、全角数値文字列、空文字、エラーの優先順位に違いがあります。
  • 表は最大30行・20列を表示します。行数・列数を直接編集して表示上限を超える配列も試せます。表示を省略した場合も、結果範囲と最後の値を保持します。

一般構文

対応:Excel / Google スプレッドシート ・ 構文:構文は同じ

  • 途中を空欄にした引数では既定値が異なります。例えばSEQUENCE(2,2,,)はExcelで1から4、Sheetsで全て0になりました。全角数字文字列や空文字の変換にも差があります。
  • 先に数値変換できない文字列、後に実エラーがある場合、Excelは先の#VALUE!、Sheetsは後の実エラーを返す実測例があります。
  • 展開先に値がある場合、Excelは#スピル!、Sheetsは#REF!を表示する実測例があります。

Excel

=SEQUENCE(rows, [columns], [start], [step])

[] は省略できる引数です。

省略時

columns
省略すると1を使います。
start
省略すると1を使います。
step
省略すると1を使います。

Google スプレッドシート

=SEQUENCE(rows, [columns], [start], [step])

[] は省略できる引数です。

省略時

columns
省略すると1を使います。
start
省略すると1を使います。
step
省略すると1を使います。
公式資料・確認範囲

公式資料

実機確認

  • Excel 2021 / Google スプレッドシート省略時の扱い・計算結果・入力の扱い・エラー・配列展開を確認済み

この教材で扱わない範囲

  • 画面表示でエラー種別が未確定の無効サイズ、#CALC!・#SPILL!・#NULL!を入力した場合の未確定部分は対象外です。
  • 年を省略した日付文字列は年・地域設定に依存するため対象外です。日付は年を含む文字列またはシリアル値で試せます。
  • 巨大な値の要素別オーバーフローと、ワークシートを超える配列形状は未確定のため対象外です。表示の上限30行・20列は計算サイズの上限ではありません。

次に学ぶ関数

カテゴリから探す

次に学ぶおすすめ関数はありません。カテゴリから探しましょう。

カテゴリを見る