VLOOKUP関数で複数条件を指定する方法とは?

スポンサーリンク
VLOOKUP_複数条件

今回の記事では、Excelの関数の中でも特に便利なVLOOKUP関数に複数の条件を指定して、更に便利に使う方法を解説したいと思います。
通常VLOOKUP関数では、複数の条件を指定することができませんが、ひと工夫を加えることで複数の条件を指定することができるようになります。

VLOOKUP関数を複数条件で使用するには、あらかじめ条件に指定したい項目どうしを&(アンパサンド)で結合させた結果を別の列に作ったうえで検索値に指定する必要があります。
計算式は、=VLOOKUP(結合した検索値,範囲,列番号,[検索方法])と検索値以外は通常のVLOOKUP関数と同じように使用することができます。

今回の複数条件はAND条件という指定方法です。
その辺も含め詳しく解説していきたいと思います。

この記事を読むと分かること
  • VLOOKUP関数で複数条件を指定する方法
  • AND条件とOR条件について
  • &(アンパサンド)の使い方

複数条件を指定する場合、VLOOKUP関数よりINDEX、MATCH関数の方が列を追加することなく簡潔に複数条件を指定することができます。
そちらの記事も合わせて読んで状況にあった関数を選択いただければと思います。

↓VLOOKUP関数の使い方はこちら↓
最強の便利関数?VLOOKUP関数の使い方とは
↓INDEX,MATCH関数で複数条件を指定する方法はこちら↓
【応用】INDEX、MATCH関数で複数の条件を指定する方法とは?


スポンサーリンク

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

Table_1
表1

VOOKUP関数での複数条件の指定方法を解説するため上の仕入表を用意しました。
左のブルーの仕入表の中から、右上のピンクの欄に2つの条件を指定して絞り込んだデータを、右下の黄色の欄に個数を表示させるという流れで計算式を作っていきたいと思います。

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

2.AND条件とOR条件の違いとは?

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

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

Table_2
表2

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

3.VOOKUP関数での複数条件の指定方法とは?

それでは実際に上の表1を使用して、1つ目の条件を”A社”に2つ目の条件を”なべ”にしてデータを絞り込んでみたいと思います。
まずは、VLOOKUP関数のおさらいです。

=VLOOKUP(検索値,範囲,列番号,[検索条件])

VLOOKUP関数はこのように4つの引数を指定して指定したと思います。
今回、計算式で複数条件を指定するためにひと工夫加えるのは、検索値の部分だけです。

ただし、VLOOKUP関数で複数条件を指定するためには、範囲に指定する仕入表の方に条件を結合させた新しい列を作る必要があります。

3-1.条件を結合した新しい列を作成する

表3

手順としては表の左側に新しい列を追加(赤枠部分)し、そこに条件に指定するセルどうしを&(アンパサンド)でつなげたものを入力(青枠部分)します。

&(アンパサンド)を計算式に使うことで、前の部分と後ろの部分を結合することができます。

今回は”仕入先”と”商品”で条件を指定したいので、C列とD列を&(アンパサンド)でつなげた、

=C3&D3

と入力します。

すると、仕入先と商品が結合された”A社フライパン”という表示になるので、仕入表の一番下までオートフィルでコピー(緑枠部分)をします。

↓オートフィルについて詳しくはこちら↓
繰り返しの入力作業を一括で!オートフィルの使い方とは?

3-2.計算式の複数条件の指定方法

条件を結合した列を作ったら、いよいよVLOOKUP関数の計算式を作っていきます。

表4

今回指定する条件はH4セルとI4セルに入力された2つなので、VLOOKUP関数の計算式の検索値に&(アンパサンド)を使い2つの条件を繋げて、H4&I4と指定(赤文字部分)します。
範囲には新しく追加した列も含めて指定(青文字部分)し、列番号も追加した列を含めた数字を指定(緑文字部分)します。

計算式を組み合わせると、

=VLOOKUP(H4&I4,A3:F8,5,FALSE)

となります。

実際にこの計算式の結果は、”A社”と”なべ”の条件に当てはまる7行目の4個という数字が表示されています。

この記事の説明では、計算式が分かりやすいように範囲に絶対参照をしていませんが、実際に使うときは範囲のセルに$(ドルマーク)を付けて絶対参照をすることで、オートフィル時などに参照範囲がずれることを防ぐことができます。

3-3.なぜ列を追加する必要があるのか?

ここまでの解説で検索条件どうしを&(アンパサンド)でつなげた列を追加すると説明してきました。

一見、&(アンパサンド)を使うことで計算式を繋げることができるので、検索値の部分に複数条件を指定するだけで列を追加しなくてもうまく結果が出そうに思えますが、範囲側には複数の条件を結合したデータが存在しないため、#N/A!エラーが出てしまいます。

このため、VLOOKUP関数で複数条件を指定するためには、複数条件を1つのセルに結合した新たな列を作る必要があります。
もし、新たな列を追加するのが難しい場合はINDEX、MATCH関数を使うことで列を追加せずに複数条件を指定することができます。

↓INDEX、MATCH関数で複数条件を指定するにはこちら↓
【応用】INDEX、MATCH関数で複数の条件を指定する方法とは?
↓データを別シートにし列の追加などを便利に↓
VLOOKUP関数で別シートからデータを参照する方法とは?


今回はVLOOKUP関数で複数の条件を指定する方法を解説しました。
列を追加する必要がある点は使いどころを選ぶこともありますが、INDEX、MATCH関数で複数条件を指定するよりも簡潔な計算式で複数の条件を指定することができるのは大きな利点です。
複数の条件を指定する際の状況に応じて、どちらの方法も覚えていただければと思います。

最後までお読みいただきありがとうございました。

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