関数

【エクセルのクロス抽出】INDEX関数とMATCH関数の組み合わせ

エクセル初心者
エクセル初心者
縦のセルと横のセルが交わるセルの値を表示する方法とかってないかなぁ?
エクセル初心者
エクセル初心者
データの検索で、交わるセルを反映させることができたら、すごく便利そう!
Dr.オフィス
Dr.オフィス
それなら『クロス抽出』を紹介するよ!
クロス抽出は、関数を組み合わせて求めるので、本文で詳しく解説するね!

今回はクロス抽出について解説します。

抽出する関数は、たくさんあります。

『VLOOKUP関数』であったり、『HLOOKUP関数』であったり、さまざまです。

クロス抽出には、INDEX関数とMATCH関数で解説していきます。

ぜひ、クロス抽出をマスターしてください。

INDEX関数やMATCH関数は『エクセル関数のレベルアップ』におすすめです。

ほかにも脱初心者が知っとくべき関数を43個紹介した記事があるので、ぜひチェックしてみてください。

タイトル
【初心者必見】エクセルの関数で必要なのは6個だけ!他は覚えなくてもOK!エクセルの関数を紹介します。まだ関数をあまり使ったことのない初心者さんは、今回紹介する6個の関数を使ってみませんか?とても簡単で、計算式もスマートになり、日ごろの仕事に大変役立つ関数です。ホームタブの『ΣオートSUM』に用意されたSUM関数や、『もし○○ならば・・・』のIF関数などをマスターしましょう。...

※本記事は『OS:Windows10』画像は『Excelのバージョン:Office365』を使用しています。

エクセル『クロス抽出』とは?

クロス抽出とは、行と列が重なるセルを表示することです。

クロス抽出クロス抽出

↑例えば、フルーツ売上表を見てみましょう。

9月のぶどうの売上金額は、6,000円です。

このようにクロスした『6,000円』のセルを求めます。

そして、このクロス抽出に使用する関数が『INDEX関数』と『MATCH関数』になります。

クロス抽出できる関数はさまざまありますが、今回は『INDEX関数とMATCH関数』を解説していきます。



INDEX関数

まずはINDEX(インデックス)関数について解説していきます。

INDEX(インデックス)関数とは

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

意味:参照範囲から、指定した行番号と列番号が重なるセルを返します。

INDEX関数INDEX関数

↑フルーツ売上表からINDEX関数を使って、結果を返してみましょう。

H2セルに『=INDEX(B3:F14,4,2)』を入力します。

返る値は?返る値は?

↑すると、B3:F14の範囲から、4行目と2列目の重なるセルを表示します。

『4月(行)とパイナップル(列)の金額』が表示されています。

いっけん、INDEX関数だけでクロス抽出ができそうな気がしますが、残念ながらそうはいきません。

INDEX関数は、行番号と列番号を指定してあげないといけないので、自分で求めたいセルを探して入力しなくてはいけません。

そこでINDEX関数とMATCH(マッチ)関数と組み合わせます。

Dr.オフィス
Dr.オフィス
自分で探したら意味がないもんね。自動で抽出できるといいよね!



MATCH関数

MATCH(マッチ)関数は、検索したい値が何番目のセルか表示することができるので、INDEX(インデックス)関数の引数『行番号と列番号』に使うことができます。

MATCH(マッチ)関数とは

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

意味:検索範囲の中から、検索値が何番目のセルか数えて表示します。

『照合の種類』は、下記になります。

1検査値以下の最大値を検索します。
※検査範囲のデータは昇順に並び替えが必要
0検査値と完全に一致する値だけを検索します。
-1検査値以上の最小値を検索します。
※検査範囲のデータは降順に並び替えが必要
省略省略すると『1』と同じ

フルーツ売上表を使ってみましょう。

MATCH関数MATCH関数

↑H7セルに、『6月が何行目か?』をMATCH関数を使い表示します。

『=MATCH(H3,A3:A14,0)』を入力しましょう。

検索値はH3をセル参照します。

検索範囲は、A列の『月』になります。

照合の種類は『0』で、検査値と完全に一致する値だけを検索しました。

何列目か?何列目か?

↑『6月』は、『6』と表示されました。

同じように、フルーツ名も何列目かをMATCH関数を使って表示してみましょう。

H9セルに『=MATCH(I3,B2:F2,0)』を入力します。

I3セルの『マンゴー』をセル参照します。

マンゴーの列マンゴーの列

↑マンゴーは『5』と表示されました。

このようにMATCH関数を使うことで『行番号と列番号』が分かります。

次に、このMATCH関数とINDEX関数を組み合わせてみましょう。



クロス抽出するINDEX関数とMATCH関数の組み合わせ

H3セルの『月』とI3セルの『フルーツ名』が重なるセルの値をJ3セルに表示させます。

10月のぶどうの売上金額は?10月のぶどうの売上金額は?

↑J3セルには『10月のぶどうの売上金額』を求めることになります。

INDEX関数とMATCH関数INDEX関数とMATCH関数

↑J3セルに

『=INDEX(B3:F14,MATCH(H3,A3:A14,0),MATCH(I3,B2:F2,0))』

を入力しましょう。

INDEX関数の引数『行番号と列番号』にMATCH関数を使っています。

ぶどうの金額ぶどうの金額

↑『10月のぶどうの売上金額』は、『6,320円』となりました。

ドロップダウンリストドロップダウンリスト

↑『月』や『フルーツ名』を変更すると、売上金額が表示されます。

手入力は手間がかかるのでドロップダウンリストを設定してみました。

ドロップダウンリストの設定方法についてはこちら≫エクセルで便利な【ドロップダウンリスト】を作成や編集しようを参考にされてみてください。

タイトル
エクセル【VLOOKUP関数】で別シートから簡単に条件にあう値を参照しよう!リストから自動入力してくれるエクセルの【VLOOKUP関数】を解説します。エクセルの入力作業を効率よくすることが時短へつながります。請求書を作成した場合、商品番号や商品名、単価などすべてを手入力していては時間がかかってしまいますし、入力ミスも出てくるかもしれません。VLOOKUP関数は覚えておくと大変便利な関数です。...
タイトル
エクセル【HLOOKUP関数】横に並んだ検索範囲からデータを取り出すHLOOKUP(エイチルックアップ)関数について解説します。HLOOKUP関数は、VLOOKUP関数ととても良く似た関数になります。縦方向のデータの検索はVLOOKUP関数を使い、横方向のデータの検索にはHLOOKUP関数を使います。それぞれの引数は、ほぼ同じです。このデータを取り出す関数はぜひ覚えてほしい大変便利な関数です。...
ABOUT ME
Dr.オフィス
Dr.オフィス
エクセルの使い方や応用法を日々研究しています。 初心者から上級者までわかりやすく解説していきます。 エクセルについてわからないことや気になることなどございましたら是非、コメントやお問い合わせからご質問ください。