ラベルラベル

動的配列・スピル入門

CHOOSEROWS関数を見て理解する

配列から指定した行だけを選び、その行を新しい配列として返す関数です。

3つのポイント

  1. 元になる配列を指定する
  2. 取り出したい行番号を指定する
  3. 選んだ行を複数セルへスピルする
例題

4行の配列から指定した1行を取り出す

サンプル数式

  • 配列
  • 行番号

いまの結果:

1行 × 3列
計算結果
結果セル:G2スピル範囲:G2:I2

先頭行:「バナナ」 | 95 | 12

入力・条件:配列 A2:C5(4行 × 3列) / 行番号 2
  • 配列A2:C5(4行 × 3列)先頭行:「りんご」 | 120 | 8
  • 行番号E2:2
この結果になる理由

指定した行を選んだ結果です。

サンプルデータ

行番号を変えてみよう

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

「4行の配列から指定した1行を取り出す」のサンプルデータ。引数番号は正式引数と教材要素の対応、小さな角丸数字は処理順を表します。
ABCDEFGHI
1商品売上在庫 行番号 商品売上在庫
2りんご1208  バナナ9512
3バナナ9512      
4みかん1106      
5ぶどう1404      
配列行番号起点セルスピル結果
①・② 正式引数 / 教材要素1–3 処理の流れ

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

2つの引数

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

  1. A2:C5表のセル: A2:C5

    取り出し元になる配列です。この例ではA2:C5の4行×3列を使います。

  2. E2表のセル: E2

    どの行を取り出すか指定します。正の値は上端、負の値は下端から数えます。

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

A2:C5の4行から、E2の2を使って上から2行目だけを取り出します。選んだ行はG2:I2へ自動的に広がります。

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

処理の流れ

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

  1. 元の配列を確認する

    A2B2C2A3B3C3A4B4C4A5B5C5

    A2:C5の4行×3列を行を取り出す元配列として使います。

  2. 行番号を確認する

    E2

    2なので、左上から2行目を選びます。

  3. 指定した行を取り出す

    G2:I2

    行番号2の指定順に取り出し、1行×3列の結果をG2:I2へスピルします。

対応アプリ

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

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

この例の注意点

  • 行番号は1から数え、正の値は上端から指定します。
  • 負の行番号を指定すると、下端から行を数えて取り出せます。
  • 0または配列の行数を超える行番号を指定すると#VALUE!になります。
  • CHOOSEROWSは複数の行番号を指定して、任意の順番で複数行を返すこともできます。
  • この教材では1つの行番号を変更しながら、選ばれる行とスピル結果の変化を確認できます。

一般構文

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

  • 行番号引数では、Excelが受理して行番号へ変換する数値文字列・全角数値文字列などを、Google スプレッドシートでは#VALUE!として扱うケースがあります。
  • 複数の行番号引数でcoercion・typed error・domain不正が競合する場合、ExcelとGoogle スプレッドシートで返されるエラーが異なるケースがあります。

Excel

=CHOOSEROWS(array, row_num1, [row_num2], ...)

Google スプレッドシート

=CHOOSEROWS(array, row_num1, [row_num2], ...)
公式資料・確認範囲

実機確認

  • Excel for the web / Google スプレッドシート計算結果・入力の扱い・エラーを確認済み

未確認

配列展開

次に学ぶ関数

カテゴリから探す

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

カテゴリを見る