エクセルの関数の中でよく使われる一つ、INDEX関数(読み:インデックス、意味:英語で「index」は「目次」)をここでは取り上げて解説していきます。

INDEX関数とは何か?

INDEX関数とは「=INDEX(配列, 行番号, [列番号])」や「=INDEX(参照, 行番号, [列番号], [領域番号])」という形で使うのが一般的で、指定した「配列」や「参照」の左上から指定した行と列が交わる位置にあるセル情報を表示してくれる関数です。

INDEX関数の書式配列形式 =INDEX(配列, 行番号, [列番号])
参照形式 =INDEX(参照, 行番号, [列番号], [領域番号])
対応Version365、2019、2016、2013、2010

INDEX関数の配列形式

配列形式の「配列」について

「配列」には、セル範囲または配列定数を指定します。指定した範囲・配列の左上が基準となり、この後に指定する「列番号」と「行番号」で相対的に決定するセル情報が表示されます。

配列形式の「行番号」について

「行番号」には、0以上の整数を指定します。「配列」が1行のときは、行は1行しか無いので、「行番号」は省略することができます。

また、「行番号」を「0」と指定すると、行全体を返します。

配列形式の「列番号」について

「列番号」には、0以上の整数を指定します。「配列」が1列のときは、列は1列しか無いので、「列番号」は省略することができます。

また、「列番号」を「0」と指定すると、列全体を返します。

※「行番号」と「列番号」が共に省略されるとエラーが表示されます。

INDEX関数の参照形式

参照形式の「参照」について

「参照」には、セルを参照する形で指定します。

複数のセル範囲を指定することも可能で、その際には複数の範囲を括弧()で囲み、それぞれの範囲をカンマ,でつなぎます。例えば、(A1B10,D1E10)のような形になります。

参照形式の「行番号」について

「行番号」には、0以上の整数を指定します。「参照」が1行だけの場合、行は1行しか無いので、「行番号」は省略することができます。

また、「行番号」を「0」と指定する場合、行全体を返します。
(↑配列の「行番号」を同じです)

参照形式の「列番号」について

「列番号」には、0以上の整数を指定します。「配列」が1列だけの場合、列は1列しか無いので、「列番号」は省略することができます。

また、「列番号」を「0」と指定すると、列全体を返します。
(↑配列の「列番号」を同じです)

※「行番号」と「列番号」が共に省略されるとエラーが表示されます。

参照形式の「領域番号」について

「領域番号」は必ずしも設定する必要のない、任意項目になります。「参照」にて複数のセル範囲を指定した場合に、どのセル範囲の中から該当するセルを検索するかを指定することができます。

「領域番号」が省略された場合には、「参照」で指定した一番左のセル範囲を使用することになります。

INDEX関数(配列形式)の具体的な使い方

①INDEX関数を使える状況を準備します。

ここでは表と、分かりやすいように列番号と行番号を入力したセルを用意しています。

②INDEX関数を使いたいセルに「=INDEX (」と入力します。

③「配列」を指定します。

ドラッグでセル範囲を指定すると簡単です。

④「行番号」と「列番号」を入力します。

ここでは①で準備した「行番号」と「列番号」に該当するセルをそれぞれ参照しています。

⑤「Enter」を押し、表示された結果を確かめます。

「A2:F16」とするセル範囲の左上から5行目、4列目なので「D6」のセル情報が結果として表示されます。

INDEX関数(参照形式)の具体的な使い方

①INDEX関数を使える状況を準備します。

ここでは複数の表と、分かりやすいように行番号と列番号を入力したセルを用意しています。

②INDEX関数を使いたいセルに「=INDEX (」と入力します。

③「参照」を指定します。

ここでは複数のセル範囲を指定したいので、括弧()で囲み、それぞれの範囲をカンマ,でつないでいます。

④「行番号」と「列番号」を入力します。

ここでは①で準備した「行番号」と「列番号」に該当するセルをそれぞれ参照しています。

⑤「領域番号」を指定します。

⑥「Enter」を押し、表示された結果を確かめます。

「A2:B15,D2:E15」とする複数のセル範囲のうち2つ目(D2E15)の左上から2行目、1列目なので「D2」のセル情報が結果として表示されます。

INDEX関数の注意点:「#REF!」エラーについて

INDEX関数を使う上で、よく「#REF!」エラーが表示されます。このエラーの原因は「行番号」(または「列番号」)で指定した値が「配列」・「参照」の行数(または列数)よりも大きいことが原因です。

「#REF!」エラーとは「参照するセルが存在」が存在しませんという意味なので、「配列」・「参照」の行数・列数と指定する「行番号」・「列番号」を見直すことで解消されます。