【Excel】INDEX関数-セル参照や配列から指定された位置の値を返す関数-


(約文字)

2020-08-21

  • Keyword
  • Excel
  • INDEX関数
  • セル参照
  • 配列
  • 指定位置

INDEX関数とは

  • 365
  • 2019
  • 2016
  • 2013
  • 2010
  • 2007

エクセルの「INDEX関数」はセル参照や配列から指定された位置の値を返す関数です。

「INDEX関数」には二つの使い方があります。

  • ・指定したセルやセルの配列の値を求める場合は、「配列形式」を参照してください。
  • ・指定したセルの参照を求める場合は、「セル範囲形式」を参照してください。

構文と引数(配列形式の場合)

行番号と列番号のインデックスで選択された、テーブルまたは配列内の要素の値を返します。INDEX関数の1番目の引数が配列定数のときは、配列形式を使います。

=INDEX(配列, 行番号, [列番号])

引数必要性内容
配列必須セル範囲または配列定数を指定します。配列が1行または1列のみの場合、対応する行番号または列番号は省略可能です。配列に複数の行と1つ以上の列があり、行番号または列番号のみが使用されている場合、INDEXは配列の行または列全体の配列を返します。
行番号必須列番号が存在しない場合は必須です。 配列の中にあり、値を返す行を数値で指定します。行番号が省略された場合は、列番号が必要です。
[列番号][省略可]配列の中にあり、値を返す列を数値で指定します。列番号が省略された場合は、行番号が必要です。

INDEX関数の解説(配列形式の場合)

  • ・引数行番号と列番号の両方が使用されている場合、INDEX 関数は行番号と列番号の交点にあるセルの値を返します。
  • ・行番号と列番号では、配列内のセルをポイントする必要があります。それ以外の場合、INDEX 関数は#REF!を返します。 エラーが表示されます。
  • ・行番号または列番号を 0 (ゼロ) に設定した場合、INDEX 関数は、列または行全体の値の配列をそれぞれ返します。 配列として返された値を使用するには、INDEX 関数を配列数式として入力します。
出典:Microsoft - Office サポート

構文と引数(セル範囲形式の場合)

指定された行と列が交差する位置にあるセルの参照を返します。参照が隣接していない選択範囲で構成されている場合は、検索対象を選ぶことができます。

=INDEX(参照範囲, 行番号, [列番号], [領域番号])

引数必要性内容
参照範囲必須1つまたは複数のセルの参照を指定します。参照用に隣接していない範囲を入力する場合は、参照をかっこで囲みます。参照の各領域に1つの行または列しか含まれていない場合は、行番号または列番号の引数はそれぞれ省略可能です。例えば、範囲が1行のみである場合は、INDEX(参照範囲,列番号) と指定できます。
行番号必須参照範囲の中にあり、セル参照を返すセルの行位置を数値で返します。
[列番号][省略可]参照範囲の中にあり、セル参照を返すセルの列位置を数値で返します。
[領域番号][省略可]行番号と列番号の交差部分を返す、範囲を選択します。最初に選択または入力された領域が1となり、以下、2番目の領域は2というように続きます。省略された場合は1を使用します。 ここで表示される領域はすべて1つのシート上に置かれている必要があります。他の領域と同じシート上に存在しない領域を指定した場合、#VALUE! エラーが発生します。相互に異なるシート上に置かれている範囲を使用する必要がある場合は、INDEX 関数の配列形式を使用し、別の関数を使用して配列を形成する範囲を計算することをお勧めします。

INDEX関数の解説(セル範囲形式の場合)

  • ・参照と領域番号で特定の範囲を選択した後 列番号 行番号、行番号1 が範囲内の最初の行であり、列番号1が最初の列であるなど、特定のセルを選択します。 INDEX によって返される参照は、行番号と列番号の交差部分です。
  • ・0 (ゼロ) に行番号または列番号を設定すると、列または行全体の参照がそれぞれ返されます。
  • ・行番号、列番号、領域番号は、参照内のセルをポイントする必要があります。それ以外の場合、INDEX 関数は #REF を返します。 エラーが表示されます。 行番号と列番号を省略すると、領域番号によって指定されたセル参照の領域が返されます。
  • ・INDEX 関数の計算結果はセル参照となり、他の数式はこれを通常のセル参照と同様に扱います。 INDEX 関数の計算結果は、セル参照または値として使用されます。 たとえば、CELL("width",INDEX(A1:B2,1,2)) という数式は、CELL("width",B1) と同じ結果になります。 これは CELL 関数が、INDEX 関数の計算結果を通常のセル参照と同じであると解釈するためです。 一方、2*INDEX(A1:B2,1,2) のような数式では、INDEX 関数の計算結果はセル B1 に入力されている数値に変換されます。
出典:Microsoft - Office サポート

関連する関数

  • VLOOKUP関数:配列の左端列で特定の値を検索し、対応するセルの値を返す関数
  • MATCH関数:照合の型に従い参照や配列に含まれる値を検索し、検査値と一致する要素の相対的な位置を数値で返す関数
  • INDEX関数:セル参照や配列から指定された位置の値を返す関数
  • INDIRECT関数:参照文字列によって指定されるセルに入力されている文字列を介して、間接的にセルを指定する関数