エクセルで表の行と列が交わるところを検索する方法 INDEX MATCH関数

エクセル

あなたはエクセルで、縦の行と横の列がクロスするところの数字を調べるとき、表を目で追うのが面倒だと思ったことはありませんか?

例えば、年ごと、月ごとの売上集計表があり、縦が年、横が月の場合、調べたい年と月がわかっているなら、その年と月をどこかのセルに入れると、すぐ表示される方が楽で速いですよね。

エクセルの関数を使えば、縦と横の検索をして、その結果を出せます。

今回は「エクセルで行と列が交わるところを検索する方法 INDEX MATCH関数」を紹介します。

エクセルで表の行と列が交わるところを検索する方法 INDEX MATCH関数

エクセルで表の行と列が交わるところを検索する方法(INDEX MATCH関数)です。

下のような表があるとします。

例えば、A8セルに「2023年」、B8セルに「5月」と入力すると、上の表から2023年の行と、5月の列が交わるセルの値を返す、というのを例に紹介します。

1.C8セルに「=INDEX(A1:M4,MATCH(A8,A1:A4,0),MATCH(B8,A1:M1,0))」を入力する

今回は先に、入力する数式から紹介します。

C8セルに「=INDEX(A1:M4,MATCH(A8,A1:A4,0),MATCH(B8,A1:M1,0))」を入力します。

見慣れないと意味不明かもしれませんが、後から数式の意味を解説していきますので、読み進めて行って下さい。

これでA8、B8セルに検索したい年と月を入れれば、C8セルに検索結果の数字が表示されます。

2.数式の意味

INDEX関数とMATCH関数を組み合わせて使っています。

それぞれの基本的な数式は以下の通りです。

INDEX関数 

「=INDEX(配列,行番号,列番号)」

MATCH関数

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

INDEX関数の中に、MATCH関数を入れる形です。

それぞれの意味を踏まえた上で、C8セルに入れた数式の意味は、次の様になります。

①選択したセル(C8)に、

②検索したい表の範囲(A1~M4)から、

③検索したい値(A8)を

④検索範囲(A1~A4)から選び、

⑤完全一致するものを取り出す。

⑥検索したい値(B8)を

⑦検索範囲(A1~M1)から選び、

⑧完全一致するものを取り出す。

⑨⑤の行と⑧の列の交わる値を①のセル(C8)に表示する、という意味です。

①~⑧は下の画像に対応しています。(⑨は①と同じなので省略)

これも見慣れないとわかりづらいので、次にMATCH関数とINDEX関数に分解していきます。

3.MATCH関数

まずはMATCH関数部分の前半です。

こちらは、どの行を検索するか、になります。

③A8セルにマッチするものを、④A1~A4セルから選び、⑤完全一致するもの、という意味です。

色々書いてますが、つまりA8セルの値です。

次に後半部です。

こちらは、どの列を検索するか、になります。

⑥A8セルにマッチするものを、⑦A1~A4セルから選び、⑧完全一致するもの、という意味です。

こちらも色々書いてますが、つまりB8セルの値です。

4.INDEX関数

INDEX関数は、「配列、行番号、列番号」なので、

配列:②A1~M8の範囲から、行番号:③~⑤A8セルの行と、列番号:⑥~⑧B8セルの列のクロスするところの値を表示する、の意味になります。

5.結果を確認

A8セルに「2023年」、B8セルに「5月」を入力して、うまく結果が取り出せるか、確認します。

ちゃんと表示できました。

これで大きな表をいちいち目で追わなくて済みますね!

まとめ

エクセルで表の行と列が交わるところを検索する方法です。

INDEX関数の中に、MATCH関数を混ぜて使います。

INDEX関数 「=INDEX(配列,行番号,列番号)」

MATCH関数 「=MATCH(検索値,検索範囲,照合の種類)」

組み合わせて、

=INDEX(配列,行番号MATCH(検索値,検索範囲,照合の種類),列番号MATCH(検索値,検索範囲,照合の種類))を入力します。

こんかい紹介した例では、「=INDEX(A1:M4,MATCH(A8,A1:A4,0),MATCH(B8,A1:M1,0))」を入れました。

これで表の中から、行と列がクロスするところを簡単に検索し、時間と手間を減らしていきましょう!

コメント

タイトルとURLをコピーしました