今回は、近年MOS試験エキスパートレベルにも出題範囲とされている「INDEX関数」について解説します。
そこで今回は、どうしてもINDEX関数を使った方がいい例題を用いて説明しよう。
それでは例題に入りましょう。
【例題】
INDEX関数を使用して、在庫表の[ラベルの色]を自動的に入力してください。
(ただし、[色番号]に合うラベルの色を「色一覧」から抜き出すこと)
さて、この場合、「ラベルの色」を埋めることができればゴールということになります。
その意味は、「色一覧」の表において、「上から何番目の色か?」を指定しているわけだ。
これなら、何となく見たことがある状況だぞぅ!
VLOOKUP関数を使えばカンタンに…って、あらっ?
肝心の色番号が、色一覧にないだろう?これではVLOOKUP関数では探すことができない。
そこで、INDEX関数を使うわけだ。
それでは、INDEX関数を利用します。
INDEX($B$16:$B$18,D21)
INDEX(配列,行番号,[列番号は今回省略])
どういうこと?
1つ目の引数で「どこから検索したいのか?」を指定する
1つ目の引数では、どの範囲からデータを検索したいのか?を指定します。
ここでは、「色一覧」のセルB16からB18までの範囲を絶対参照で指定しています。
2つ目の引数で「何行目のデータを参照するか?」を指定する
2つ目の引数では、「何行目のデータを参照したいか?」を指定します。
ここでは、[色番号]列にその数値が入力されているので、セルD21を参照しています。
すると、最初のD21には「1」と入力されていますので、指定した範囲の1行目のデータを参照するという意味になります。
3つ目の引数は省略可能。(「何列目のデータを参照するか?」を指定)
3つ目の引数では、「何列目のデータを参照するか?」を指定します。しかし、この引数は省略することが可能です。
ここでは、引数を省略しているので、2つ目の引数で指定した「何行目」だけが適用されます。
つまり、上から何番目かのデータを参照してくれるのがINDEX関数というわけかぁ!
VLOOKUP関数のようにID番号などと照合することはできないが、
「上から何番目」「左から何番目」といった感じにシンプルに場所を指定できるので、ID番号などが無くてもデータを参照できる関数だな。
使う場面は限られそうだけど…、ある意味ではVLOOKUP関数よりも分かりやすい仕組みかなぁ。
まぁ、実際のところ、INDEX関数を単体で使う場面はこういうケースに限られてくるだろう。
だが、MATCH関数など他の関数と組み合わせて使うことで応用的な操作が色々と考えられる。ここが面白いところだ。
それはまた別途、次の機会に教えよう。
以上、いかがだったでしょうか?
INDEX関数、ぜひ覚えておきましょう!
エクセル兄さん IT講師の淳
わかりやすく、楽しく学べて、本当に有難いです。
ご購読ありがとうございます!