動的配列・スピル入門
SEQUENCE関数を見て理解する
行数・列数・開始値・増分量を指定し、右へ順番に進む連番の表をまとめて作る関数です。
3つのポイント
- 行数・列数で表の大きさを決める
- 開始値から増分量ずつ進める
- 右から次の行へ連番を生成してスピルする
3行×3列に、10から2ずつ進む連番を作る
サンプル数式
- 行数
- 列数
- 開始値
- 増分量
いまの結果:
先頭行:10 | 12 | 14
入力・条件:4項目
- 行数B2:3
- 列数B3:3
- 開始値B4:10
- 増分量B5:2
3行×3列を、10から2ずつ、右へ進み行末で次の行へ埋めます。結果範囲はE2:G4、最後の値は26です。
例を試す
サンプルデータ
※ Excel と Google スプレッドシートで結果や挙動が異なる場合、Excel の仕様を基準にしています。
| A | B | C | D | E | F | G | |
|---|---|---|---|---|---|---|---|
| 1 | 引数 | 値 | 結果 | ||||
| 2 | 行数 | 10 | 12 | 14 | |||
| 3 | 列数 | 16 | 18 | 20 | |||
| 4 | 開始値 | 22 | 24 | 26 | |||
| 5 | 増分量 | ||||||
| 6 |
B2、B3、B4、B5に値を入力すると、結果と処理順が変わります。
4つの引数
色付きの丸数字は、サンプル数式と引数ガイドで同じ引数を示しています。表にも同じ番号があれば、その引数で指定しているセルを示します。
B2表のセル: B2結果を何行にするかを指定します。
B3表のセル: B3結果を何列にするかを指定します。
B4表のセル: B4最初に表示する数値です。
B5表のセル: B5次のセルへ進むたびに加える数値です。
この数式を日本語にすると
B2の行数とB3の列数で表の大きさを決め、B4の10からB5の2ずつ進む値を右へ並べます。E2:G4に10から26までの連番を返します。
この説明は、最初に表示されているサンプルデータをもとにしています。入力値を変更しても説明文は変わりません。
処理の流れ
手順1〜6を順番に確認しましょう。表内の小さな角丸数字は、対応する手順を示します。
行数を決める
B2行数:3 → 3行。
列数を決める
B3列数:3 → 3列。
開始値を確認する
B4開始値:10。
増分量を確認する
B5増分量:2。
右へ進み、次の行へ埋める
E2:G4E2:10 → F2:12 → G2:14 → E3:16。開始値+(何番目か−1)×増分量で生成します。
スピル結果を確認する
E2:G43行×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を使います。
公式資料・確認範囲
公式資料
- Microsoft Excel 公式対応状況・構文・省略時の扱い
- Google スプレッドシート 公式対応状況・構文・省略時の扱い
実機確認
- Excel 2021 / Google スプレッドシート省略時の扱い・計算結果・入力の扱い・エラー・配列展開を確認済み
この教材で扱わない範囲
- 画面表示でエラー種別が未確定の無効サイズ、#CALC!・#SPILL!・#NULL!を入力した場合の未確定部分は対象外です。
- 年を省略した日付文字列は年・地域設定に依存するため対象外です。日付は年を含む文字列またはシリアル値で試せます。
- 巨大な値の要素別オーバーフローと、ワークシートを超える配列形状は未確定のため対象外です。表示の上限30行・20列は計算サイズの上限ではありません。
次に学ぶ関数
カテゴリから探す
次に学ぶおすすめ関数はありません。カテゴリから探しましょう。
カテゴリを見る