サイトについて      連絡先   検索

エクセル 2016 INDEX 関数の使い方:セルの範囲から指定した行と列の位置にあるセルを取得する

はじめに

エクセル 2016 の INDEX 関数の使い方を紹介します。

INDEX 関数はセルの範囲から指定した行と列の位置にあるセルを取得します。

セルの範囲の 1 行 2 列目のセルを取得したいときに使用します。

MATCH 関数と組み合わせて VLOOKUP 関数より高度に検索するには「VLOOKUP 関数より高度に検索する」をご覧ください。
  • 目次
    • 構文
    • 使用例
    • 解説

構文

INDEX(対象範囲, 行番号)
INDEX(対象範囲, 列番号)
INDEX(対象範囲, 行番号, 列番号)
対象範囲の中から行番号列番号の交差するセルの参照を取得します。

引数「対象範囲」対象となるセルの範囲を指定します。
引数「行番号」引数「対象範囲」が 1 行のときは省略できます。
引数「対象範囲」の何行目のセルを取得するか指定します。
0 を指定すると行全体を取得します。
引数「列番号」引数「対象範囲」が 1 列のときは省略できます。
引数「対象範囲」の何列目のセルを取得するか指定します。
0 を指定すると列全体を取得します。

INDEX((対象範囲1,対象範囲2 …), 行番号, 列番号, 領域番号)
領域番号に対応する対象範囲の中からセルの参照を取得します。

引数「対象範囲」上記と同じです。
引数「行番号」上記と同じですが、省略はできません。
引数「列番号」上記と同じですが、省略はできません。
引数「領域番号」省略できます。省略すると引数「対象範囲1」を使用します。
使用する引数「対象範囲」の番号を指定します。

使用例

引数「行番号」を変化させて、何行目のセルを取得するか確認する。列は 2 列目を指定しています。

=INDEX($B$2:$D$4,B7,2)
2

引数「列番号」を変化させて、何列目のセルを取得するか確認する。行は 2 行目を指定しています。

=INDEX($B$2:$D$4,2,B7)
3

引数「行番号」と引数「列番号」を指定する。

=INDEX($B$2:$D$4,B7,C7)
4

引数「領域番号」を変化させて、何番目の引数「対象領域」を使用するか確認する。1 行目と 1 列目を取得します。

=INDEX(($B$2:$B$4,$C$2:$C$4,$D$2:$D$4),1,1,B7)
5

解説

引数の種類がいろいろありますが、通常は=INDEX(対象範囲, 行番号, 列番号)の形式を使用します。

セルの範囲「B2」~「D4」から 2 行目 2 列目を指定すると、交差したセル「C3」が返されます。

6

引数「行番号」に 0 を指定すると行全体が選択されます。1 列目を指定すると交差したセルの範囲「B2:B4」が返されます。引数「列番号」に 0 を指定したときも同様に列全体が選択されます。

7

結果はセルの値ではなくセル参照が返されます。他のセル参照を受け取る関数と組み合わせられます。

=SUM(INDEX($B$2:$D$4,0,B7))
8

オートフィルを使ってコピーする

「INDEX 関数」をコピーしたときに引数「行番号」を対応させて移動したいときは「ROW 関数」を使用します。

=INDEX($B$2:$D$4,ROW(B7)-7,2)
9

「ROW 関数」は引数に指定したセルの行番号を取得します。ROW(B7)と入力すると 7 が取得されます。これをコピーして下の行に貼り付ければROW(B8)ROW(B9)になるので 8, 9 といった値を取得できます。後は取得したい行番号に合わせるために -7 のような調整をします。

引数「列番号」を対応させるには「COLUMN 関数」を使用します。使用方法は「ROW 関数」と同じです。

  • 目次
    • 構文
    • 使用例
    • 解説