【応用】INDEX、MATCH関数で複数の条件を指定する方法とは?

スポンサーリンク
multiple-conditions-indexmatch-title

今回は応用編として、VLOOKUP関数の代わりに使うことが出来るINDEX、MATCH関数で複数の条件を指定する方法を解説したいと思います。
INDEX、MATCH関数だけでも十分に便利に使うことができますが、計算式を応用して複数の条件を指定することでさらに細かな絞り込みをすることができます。

INDEX、MATCH関数で複数の条件を指定するにはMATCH関数の条件指定の部分を”&”(アンパサンド)で繋げることにより設定をすることができます。
条件を複数指定することで計算式はより複雑になってしまうので、この先の記事で詳しく解説していきます。

この記事を読むと分かること
  • INDEX、MATCH関数での複数の条件指定の方法
  • 計算式を”&”を使ってつなげる方法
  • AND条件とOR条件の違い

この記事では複数の関数を使用する中、上級者向けの計算式を解説しています。
初心者の方は、ぜひVLOOKUP関数やINDEX、MATCH関数の使い方の記事からお読みください。

↓VLOOKUP関数、INDEX、MATCH関数の記事はこちら↓
【実践】最強の便利関数?VLOOKUP関数
【実践】VLOOKUP関数の代わりに?INDEX関数とMATCH関数の使い方
↓VOOKUP関数で複数条件を指定する記事はこちら↓
VLOOKUP関数で複数条件を指定する方法とは?
↓office365ユーザーの方はXLOOKUP関数という新関数もあります↓
VLOOKUP関数の新しい代替関数、XLOOKUP関数とは?


↓記事のまとめページに戻るにはこちら↓

スポンサーリンク

1.INDEX、MATCH関数で複数条件を指定するとは?

table_1
表1

INDEX、MATCH関数の複数条件を指定することを解説するために、上の仕入表を用意しました。
左のブルーの仕入表の中から、右上のピンクの欄に2つの条件を設定して絞り込んだデータを、右下のイエローの表に個数を表示させるという手順で計算式を入力していきたいと思います。

今回解説する計算式では、指定した2つの条件がどちらも該当していないと表示させることはできない、AND条件というものです。

2.AND条件とOR条件とは?

Excelの条件指定には大まかにAND条件とOR条件というものがあります。
今回解説する計算式で複数条件を指定した場合、AND条件という指定方法になります。

AND条件とOR条件の違いは何かと言うと、A複数の条件を指定した場合に全ての条件に一致していないといけないものがAND条件、複数の条件のうちどれか1つにでも一致していればいいものがOR条件という違いがあります。

英単語のANDとORの意味を考えると分かりやすいですね。
下の表にANDとORの条件と結果を一覧にしましたので参考にしてください。

table_2
表2

3.計算式の入力方法とは?

それでは実際に、1つ目の仕入先の条件を”A社”に2つ目の商品の条件を”包丁”にしてデータを絞り込んでみたいと思います。
まずは、INDEX、MATCH関数のおさらいです。

=INDEX(参照範囲,MATCH(検索値,検索する列,0),列番号)

INDEX、MATCH関数はこのような組み合わせで使ったと思います。
この計算式を基に条件を複数指定するには、赤字の検索値と検索する列の部分を変えれば複数の条件を指定できそうですね。

table_3
表3

今回の条件を指定するのは、赤枠で囲んだG4セルとH4セルです。
そのため検索値にはG4セルH4セルを、検索する列には仕入先が載っているB列商品が載っているC列をそれぞれ指定すればうまく複数の条件指定が出来そうですね。

ただ、そのまま2つの条件を計算式に当てはめようとしても、INDEX、MATCH関数の計算式には検索値と検索する列を指定する場所が1つしかありません。

そこで2つ以上の条件を指定するために使うのが”&(アンパサンド)”という記号です。

この”&”ですが、計算式にいれることで2つ以上の計算式を繋げることができます。
上のINDEX、MATCH関数の場合、検索値と検索する列の部分にそれぞれの条件を”&”で繋げて入力することで2つの条件を指定することができます。

それでは実際に計算式に当てはめてみましょう。

=INDEX(A3:E8,MATCH(G4&H4,B3:B8&C3:C8,0),4)

今回の計算式で重要な部分は、検索値を指定した赤字の部分検索する列を指定した青字の部分です。
検索値の部分には”&”で繋げたG4セルとH4セルを順番に入力し。
検索する列をの部分には、検索値と同じ順番で、仕入先が入っているB列と商品が入っているC列を”&”で繋げて入力しています。

ここで大切なのは、検索値と検索する列を”&”で繋げる順番を同じにすることです。
ここの順番がずれてしまうと、正確に検索をすることができません。

table_4
表4

実際に計算式を入れてみたところ、A社と包丁の条件がどちらも一致する(AND条件)8行目の個数”5”個という数字がしっかり表示されました。

今回は計算式の説明を分かりやすくするために絶対参照をしない計算式で解説しましたが、実際に使う場合は、コピペやオートフィルを使っても参照する場所がずれないようにF4で”$”マークを付けて絶対参照をするようにしてください。

↓絶対参照について詳しい記事はこちら↓
$(ドルマーク)の意味は?参照する列や行を固定する絶対参照とは?
↓オートフィルについて詳しくはこちら↓
繰り返しの入力作業を一括で!オートフィルの使い方とは?
↓MATCH関数について詳しい記事はこちら↓
検索値の位置を調べる!MATCH関数の使い方とは?


今回はINDEX、MATCH関数で複数の条件を指定する方法を解説しました。
今回計算式を繋げるのに使用した”&”は他の計算式でも使用できるので、ぜひ覚えておいていただければと思います。

↓VOOKUP関数で複数条件を指定する方法はこちら↓
VLOOKUP関数で複数条件を指定する方法とは?
↓&の使い方はこちらの記事でも解説されています↓
VLOOLUP関数で結果の0を表示させない方法とは?

↓続きの記事はこちら↓

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