【エクセル】INDEX関数とMATCH関数の使い方

Excel

INDEX関数とMATCH関数は最強の組み合わせ

社会人1年生
社会人1年生

INDEX関数とMATCH関数って聞くだけで難しいけど、どういう仕組みなんだろう。。。エクセルが苦手な僕に教えてくれる人はいないかな・・・。

keta
keta

ひとつひとつを見ると難しいけど、まとめて基本を覚えればマスターできるはず!ひとつずつ説明していくね!

この記事にはこのようなことが書いてあります。

・INDEX関数の使い方(INDEX関数)
・MATCH関数の使い方(MATCH関数)
・交通機関の料金計算をINDEX関数とMATCH関数を使って求める(INDEX関数、MATCH関数)

INDEX関数とは?

INDEX(範囲,行番号,列番号)
指定した範囲で、指定した行番号と列番号が交差する位置のセルを参照します。
引数
範囲:抽出する値を含むセル範囲
行番号:範囲内で抽出する行番号
列番号:範囲内で抽出する列番号

INDEX関数の使い方

このような表があったとします。

C9とC10には、それぞれ次のような式を入力します。

C9:=INDEX(C3:D6,4,1);C3~D6の範囲を指定し、上から4番目の行番号、左から1番目の列番号
C10:=INDEX(C3:D6,4,2);C3~D6の範囲を指定し、上から4番目の行番号、左から2番目の列番号

するとこのような値が求められます。


この関数単独ではそんなに頻繁に使うことはないですが、次に紹介するMATCH関数と組み合わせることによってとても使いやすいものになります。

MATCH関数とは?

MATCH(検査値,検査範囲[,照合の種類])
検査値を照合の種類に従い、検査範囲内で検索し、何番目にあるかを求めます。
引数
検査値:位置を求める値を指定します。
検査範囲:検査値を含むセル範囲を指定します。
照合の種類:検査値を探す方法で省略または「1」を指定すると検査値以下の最大値。「0」を指定すると検査値と完全一致。「-1」を指定すると検査値以上の最小値を検索します。

MATCH関数の使い方

このような表があったとします。


C9とC10には、次のような式を入力します。

C9:=MATCH(B9,B3:B6,0);B9セルの値”D君”は「B3:B6の範囲」の何番目の値か
C10:=MATCH(B10,C2:D2,0);B10セルの値”D君”は「C2:D2の範囲」の何番目の値か

それぞれ”D君”と”体重”という値が指定した範囲の何番目の値かを調べます。

上記式を入力すると下記の表のように”D君”は4番目、”体重”は2番目という値が返ります。

INDEX関数とMATCH関数は最強の組み合わせ

タイトル通り、これをマスターすればVLOOKUP関数を超える最強の組み合わせになります。VLOOKUP関数は、検査値に対して横 あるいは 縦に検索しますが、INDEX関数は縦、横ともに指定することが出来ます。これをMATCH関数と組み合わせることでより細かく検索することが出来るのです。具体例を元に説明していきます。

交通機関の料金計算をINDEX関数とMATCH関数を使って求める方法

次のような表があったとします。

 D8には次のような式を入力します。

D8:=INDEX($C$3:$E$4,MATCH(B8,$B$3:$B$4,0),MATCH(C8,$C$2:$E$2,0))

式の意味

D8:=INDEX($C$3:$E$4,MATCH(B8,$B$3:$B$4,0),MATCH(C8,$C$2:$E$2,0))

C3:E4の範囲の中(絶対参照で範囲を固定)で、B8の番号C8の番号が交差する値を求めます。

こどもで電車料金を求める場合は、こども「1番目」、電車「2番目」の値の交差する値で「500」という数値が返ります。

keta
keta

こんな感じで、複数条件に対して該当する値を求めることが出来ます。VLOOKUPでは求めることが出来ない内容を、INDEX関数とMATCH関数を組み合わせることで求めることが出来ます。是非マスターして、仕事の効率化を図りましょう!

Excel
けたをフォローする
ketalog

コメント