INDEX関数の深掘り -「参照形式」が「配列形式」を包含する理由

「配列形式」「参照形式」のどちらを使用するべきかと言えば、「参照形式」。なぜならな、2つ目の型「参照」は、領域が1つ、または、2つ以上の両方に対応しているからです

記事メンテナンス中です。しばらくお待ちください。


下記2記事で、INDEX関数には2つの構文があり、
「配列」と「参照」の2つがあることをお伝えしました。

INDEX関数の構文 -指定した行列の値を取得しよう- 配列形式編 – DL可

INDEX関数の構文 -指定した行列の値を取得しよう- 参照形式編 – DL可


本記事では、

  • 「配列」と「参照」の関数式の相違点は何か
  • 「配列」と「参照」のどちらを使用するべきか

を触れていきます。

「配列」と「参照」の関数式の相違点は何か

領域1つ場合、両者の関数式は同じです。

しかし、

領域が2つ以上の場合、2つの構文には違いが生じます。

領域とは何か

領域は、データが存在する特定のセルやセルの範囲を指します。

本記事は「配列形式」「参照形式」の違いに関する言及のため、

領域に関する内容は、

【INDEX関数】複数表の中から値を取得してみよう

をご拝読ください。

INDEX関数の構文

INDEX関数の構文を復習します。

配列形式:
=INDEX(配列, 行番号, 列番号)

参照形式:
=INDEX(領域, 行番号, 列番号, [領域番号])  ※[]は省略可能です


領域1つの場合

領域1つであれば、2つ目の構文の[領域番号]は省略できるため、関数式は同じになります。

配列形式:
=INDEX(配列, 行番号, 列番号)

参照形式:
=INDEX(領域, 行番号, 列番号, [領域番号])  ※[]は省略可能。省略時は1となる


例えば、下図のようになり、2つの構文の関数式は同じになります。

領域が1つの場合のINDEX関数

領域2つの場合

しかし、もし領域2つ以上ある場合、必ず[領域番号]を指定しなければなりません。

そのため、1つ目の構文は使用できず、2つ目の構文を使う必要があります。

つまり、参照形式しか使えません

参照形式:
=INDEX(領域, 行番号, 列番号, [領域番号])  ※[]は省略可能です


例えば、下図のようになり、2つの構文の関数式は異なります。

領域が2つあるので、
どちらの領域番号を指定する必要があるためです。

領域が2つの場合のINDEX関数

「配列」と「参照」のどちらを使用するべきか

「配列形式」「参照形式」のどちらを使用するべきかと言えば、「参照形式」。なぜならな、2つ目の型「参照」は、領域が1つ、または、2つ以上の両方に対応しているからです

「配列形式」「参照形式」のどちらを使用するべきかと言えば、「参照形式」です。

なぜならな、2つ目の型「参照」は、領域が1つ、または、2つ以上の両方に対応しているからです。

領域が1つしかない場合、領域番号を1としてすればOKだからです(省略も可)

フォローアップ

INDEX関数の構文区別と失念防止のヒント

2つの構文があると、どちらがどちらか分かりにくくなります。

分かりやすくするために、2つの構文の第1引数に注目しましょう。

INDEX関数の構文区別と失念防止のヒント

第1引数の「配列」だから、配列形式。第1引数の「参照」だから、参照形式と覚えれば、

どちらがどちらかが簡単に理解できます。


最後に

「配列形式」「参照形式」のどちらを使用するべきかと言えば、「参照形式」。なぜならな、2つ目の型「参照」は、領域が1つ、または、2つ以上の両方に対応しているからです

INDEX関数は、「配列形式」と「参照形式」の2つの構文が存在します。

「参照形式」の構文を使用することがおすすめされます。
なぜなら、「参照形式」は「配列形式」を包含しており、より柔軟で強力な使い方ができるからです。

「参照形式」の構文では、[領域番号]を指定して引数として使うことができ、これにより簡単にデータを操作できます。

領域番号を指定することで、必要なデータを特定して取得することができます。

以上、ご拝読ありがとうございました。

解答付きサンプルデータ

解答付きサンプルデータが欲しい方は、下記からダウンロードしてください。


参考記事

Excel関数を操作するための基本概念です。基本概念を理解すると、各関数の理解がより深まります。

構文に関する記事

Excel関数の引数と戻り値は何だっけ?という時に、役立つ記事です。

ダイアログボックスの使い方に関する記事

Excel関数名は何だっけ?VLOOKUP関数の使い方は何だっけ?という時に、ダイアログボックスを使うと便利です。
下記はそのダイアログボックスに関する記事です。

参照形式に関する記事

関数式をコピーする時はどうしたらいい? $マークは、どう付けたらいいだろう?
といった悩みをお持ちの方は以下をご覧ください。