エクセル講座

INDEX関数とMATCH関数を組み合わせて使う方法

T氏くん
T氏くん
この表から指定した値を取り出したいけどVLOOKUP関数を使って取り出せない

T氏くん
T氏くん
困ったな~

チュベイくん
チュベイくん
そんな時はINDEX関数とMATCH関数を組み合わせて使おう

チュベイくん
チュベイくん
LOOKUP関数で取り出すことができない値をこの二つの関数を組み合わせて使うことで取り出せるよ

チュベイくん
チュベイくん
VLOOKUP関数は表の一番左側に基準となる値がある表からしか取り出せないというデメリットがある

チュベイくん
チュベイくん
それに比べてINDEX関数とMATCH関数を組み合せて使うことによりどんな表からでも必要な値が取り出せます

T氏くん
T氏くん
そんなことができるなら教えてよ~

チュベイくん
チュベイくん
本記事の内容は

INDEX関数とMATCH関数を組み合わせて必要な値を取り出す方法の解説

INDEX関数とMATCH関数の基本的な使い方の記事はこちら

エクセル講座 INDEX関数とMATCH関数の使い方 本記事の内容 INDEX関数とMATCH関数の基本的な使い方の解説 INDEX関数の使い方 指定した行と...

VLOOKUP関数に関する記事はこちら

エクセル講座 VLOOKUP関数 使い方 大量のデータから特定のデータを取り出したい時に使われる関数がVLOOKUP関数になります。 使用用途は在庫管理や顧客名簿の管理時に良く...

ここで軽くINDEX関数とMATCH関数のおさらいをしておきましょう!

INDEX関数おさらい

INDEX関数は指定した行と列が交差するセルの値を取り出す関数

INDEX関数の基本数式

=INDEX(参照,行番号,列番号,領域番号)

上記の表で当てはめて102の氏名(J2)を求めるには、=INDEX(A2:G11,2,1)と関数を記入することでJ2は鈴木という値を取り出してきます。

MATCH関数おさらい

MATCH関数は指定されたデータが選択範囲内で何番目にあるのか教えてくれる関数

MATCH関数の基本数式

=MATCH(検査値,検査範囲,照合種類)

管理番号の102が指定した範囲内で何行目にあるか調べてみましょう!

=MATCH(I2,G2:G11,0)と関数を記入すると102の値は2行目にあると表示されます。

INDEX関数とMATCH関数で指定した値を抽出方法

今回はこの表をでI2~I7の値を基準にしてJ列・K列に必要な値を取り出していきます。

二つの関数をどのように組み合わせるのか?

=INDEX(参照,MATCH(検査値,検査範囲,照合種類))

このようにINDEX関数の中にMATCH関数を組み合わせて使います。

J2にINDEX関数を挿入していきましょう!

 

参照は名前が記入されている範囲を指定「$A$2:$A$11」

※値をオートフィルする時ように範囲には絶対参照しときます。

エクセル講座 参照 相対参照 絶対参照 複合参照 どうもtyubeiです。 今回は関数へ行く前に把握しときたい参照。 参照と言っても基本的な「参照」と、「相対参照」「絶対参照」...
エクセル講座 参照 相対参照 絶対参照 複合参照 どうもtyubeiです。 今回は関数へ行く前に把握しときたい参照。 参照と言っても基本的な「参照」と、「相対参照」「絶対参照」...

行番号はここでMATCH関数を挿入して自動で行の値を計算してもらう。

「MATCH(I2,$G$2:$G$11,0)」

MATCH関数の意味はI2の値はG2~G11の間で何行目にあるか表示してくれます。

列番号と領域番号は未記入です。

条件を記入するとこのようになります

オートフィルしてJ6までコピーしましょう。

J2には鈴木と表示され、管理番号を変えると自動的に氏名欄も更新されます。

K2も同様に関数をいれて年齢を求めて行くとこのような数式になります。

年齢45歳と表示されます。

隣の表を確認すると名前と年齢が一致していることが分かります。

INDEX関数とMATCH関数 まとめ

このようにINDEX関数とMATCH関数を組み合わせて使うことにより、VLOOKUO関数では取り出すことができない値も簡単に取り出せます。

他にも使い方はさまざまあり、今回は行番号にしかMATCH関数を使用しませんでした。

列番号にもMATCH関数を入れることで、複雑な条件の値を抽出が可能になります。

まずは一つずつ基礎的な使い方からマスターしていきましょう。