EXCELで表から特定の場所(値)を取得する場合に、このINDEX関数を使うことで、便利な場面が色々と出てくるかと思います。
INDEX 関数はテーブルまたはセル範囲にある値、あるいはその値のセル参照を返します。
INDEX 関数 – Office サポート
ぜひ使い方を覚えてみましょう!
INDEX関数には2つのパターンがあります。
配列形式
=INDEX(配列, 行番号, [列番号])
行番号と列番号のインデックスで選択された、テーブルまたは配列内の要素の値を返します。INDEX 関数の 1 番目の引数が配列定数のときは、配列形式を使います。
とは書かれていますが、配列を使ったことがなければ最初は難しいかもしれませんので、実際に配列を使っていきながら説明してみます。
配列
セル範囲または配列定数を指定する
=INDEX({1,2,3,4;6,7,8,9},2,3)
配列の中の最初の行の 2 列目の値を取り出します。 配列の中で、最初の行に 1、2 と、2 番目の行に 3、4 があります。
上の場合、下の画像でいうと右側の表のような配列が第1引数に入っているので、「2行目、3列目」にあたる「8」が結果として表示されています。
セル範囲形式
=INDEX(参照, 行番号, [列番号], [領域番号])
一般的には、こちらの「セル範囲形式」の方が、使う場面は多いかもしれません。
範囲と「行番号」「列番号」を指定します。
そうすると、左上を基点に、今回の場合だと「2行目、3列目」にあたる「69」が結果として表示されています!
[領域番号]って何?
最後の引数である[領域番号]が謎だったのですが・・・解明しました。
INDEX 関数は、ひとつの領域(表)だけでなく、「複数の表」から値を取り出すことができます。
例えば、カレンダーのようなものがあったとして、3つの領域を選択すると、3つの領域から番号を選択することができるようになります。
=INDEX((B6:H11,J6:P11,R6:X11),1,2,2)
この場合は、1つ目の領域の1行目、1列目が表示されます。
=INDEX((B6:H11,J6:P11,R6:X11),1,1,1)
この場合は、2つ目の領域の1行目、2列目が表示されます。
つまり、2月1日という結果が表示されます!
まとめ
という感じでINDEX関数を使えるようになると、セルの値を自由に取得できるようになります!
ご参考ください。