【エクセル関数】行番号と列番号が交差するセルを参照するINDEX
INDEX(配列,行番号,列番号) or
INDEX(参照,行番号,列番号,領域番号)
- 第1引数:配列または参照(必須)。どちらも調べる範囲を指定。
- 第2引数:行番号。調べるセルの行番号を指定。 1行なら省略可。
- 第3引数:列番号。調べるセルの列番号を指定。1列なら省略可。
- 第4引数:領域番号(省略可)。調べる範囲が複数ある時、何番目の領域を調べるか指定。
調べる範囲の指定した行番号と列番号が交差するセルを参照します。
使い方
◆配列と参照の違い
INDEX関数は、調べる範囲として指定した領域内の、
指定した行番号と列番号が交差するセルを参照してくれます。
この関数を関数ウィザードを使って入力しようとすると、
「引数を指定してください」というダイアログボックスが出てきます。
一瞬「なんだこれ?」と迷ってしまいますが、難しく考えなくて大丈夫です。
配列も参照も、どちらも調べる範囲を指定する点では同じです。
ただ、配列の場合は、
第1引数(調べる範囲)に配列で数値や文字を直接入力することができます。
一方、参照の場合は、第1引数(調べる範囲)を複数指定できます。
もし迷ったら、調べる範囲が複数あれば[参照,行番号,列番号,領域番号]を選び、そうでなければ[配列,行番号,列番号]を選んでください。
◆INDEX関数の基本
具体的なINDEX関数の使い方ですが、
下の表のB2セルの値「B2です」を求める場合は、
「=INDEX(B2:F6,1,1)」という式になります。
「B2セルからF6セルの領域で1行目かつ1列目のセルを参照する」という意味です。
ここでの注意点は、INDEX関数で指定する行番号と列番号は
エクセルの行番号と列番号ではありません。
INDEX関数の第1引数で指定した"調べる範囲"を
基準にした行番号と列番号です。
◆調べる範囲が複数ある場合
調べる範囲が複数ある場合は、第4引数を使います。
たとえば下の表のD9セルの値「D9です」を求める場合は、
「=INDEX((B2:F6,B9:D13),1,3,2)」です。
「調べる範囲の2番目の範囲"B9:D13"の1行目かつ3列目のセルを参照する」という意味になります。
◆調べる範囲が配列の場合
たとえば、「1の1、1の2」と「2の1、2の2」,という2つの配列があり、
INDEX関数で「1の1」を参照する場合は、
「=INDEX({"1の1","1の2";"2の1","2の2"},1,1)」という式になります。
つまり、1番目の配列が1行目。2番目の配列が2行目です。
そして、配列のなかで最初に位置する値が1列目、
2番目に位置する値が2列目になります。
◆まとめ
INDEX関数は少しとっつきにくい関数ですが、
他の関数と合わせて使うと、とても便利な関数です。
最初にしっかりと理解することが大切ですので、
何度も読みこんでみて下さい。