VLOOKUP関数で複数条件を検索値にしてデータを抽出する方法!

VLOOKUP関数で複数条件を検索値にしてデータを抽出する方法!

VLOOKUP関数は、シート内の大量のデータから特定の情報を絞り込むのに大変便利な関数です。ですが、仕様上1つの条件しか設定できず、複数条件で絞り込もうと工夫する必要があります。今回は複数条件指定した上でVLOOKUP関数で絞り込む方法を解説していきます。


目次[非表示]

  1. VLOOKUP関数では条件を1つしか指定できない
  2. VLOOKUP関数で複数条件を検索値にする方法

VLOOKUP関数では条件を1つしか指定できない

条件を指定して検索・表示できるVLOOKUP関数について、うまく使いこなしていますか?

ExcelのVLOOKUPは閲覧用シートの作成やデータのフィルタリングに非常に便利な関数で使っている方も多いでしょう。

そんな便利なVLOOKUP関数にも一つだけ欠点があります。

それが「絞り込み用の条件を1つしか指定できない」ということです。

そのため、「Aグループのb商品の在庫を調べる」といった場合にはVLOOKUP関数は使えません。

ただし、それは工夫しなければの話です。

工夫すれば2つ以上の条件を指定して絞り込むことができるため、今回はそのやり方を解説していきます。

VLOOKUP関数で複数条件を検索値にする方法

まずは、簡単にVLOOKUP関数ついておさらいしましょう。

指定した範囲の1列目の値・文字列
VLOOKUP関数で絞り込みを行う際、必ず指定した範囲の1列目の値・文字列が使われます。

引数で検索対象の列を指定することができないため、上記の場合だと、商品は在庫数で絞り込むことはできません。

ですが、複数条件の絞込みにおいてこの仕様を利用します。

今回の解説では上記画像のデータを用いていますので、真似して学習したい場合は、あらかじめエクセルで入力しておいてください。

カテゴリ列の左に空き列を作る
データの準備ができたら、カテゴリ列の左に空き列を作ります。
空いた列(今回ならA列)にB列(カテゴリ)とC列(商品)の文字列をつなぎ合わせた文字列を用意
空いた列(今回ならA列)にB列(カテゴリ)とC列(商品)の文字列をつなぎ合わせた文字列を用意します。
文字列を結合する際、手入力ではなく&(アンド)で結合
文字列を結合する際、手入力ではなく&(アンド)で結合してください。

&でつなぐことで、カテゴリ・商品名を変更してもすぐにA列の文字列も変更されるため修正の手間を省けます。

これでVLOOKUP関数を使った複数条件での絞り込みの準備が整いました。

そしたら、VLOOKUP関数を使って「文房具カテゴリーの鉛筆の在庫」を調べてみましょう。

「文房具鉛筆」と入力したセルを用意
どこでもいいので、「文房具鉛筆」と入力したセルを用意してください

そのセルを検索値として参照した以下のVLOOKUP関数を入力ます。指定範囲間違いに気をつけましょう。

=VLOOKUP(B7,A2:D4,4,FALSE)
文房具カテゴリーの鉛筆の在庫を取得
上記関数を入力すると文房具カテゴリーの鉛筆の在庫が取得できたはずです。

試作品鉛筆の在庫を取得していたり、「#N/A」担っている場合は書き方が間違っているのでもう一度見直してください。

VLOOKUP関数の検索方法完全一致にし、指定範囲の1列目に複数文字列を組み合わせた文字列を入れておくことで、複数条件での検索が行えるのです。

「文房具鉛筆」を「試作品鉛筆」に書き換えると、支度できた在庫が250に変わる
試しに「文房具鉛筆」を「試作品鉛筆」に書き換えると、支度できた在庫が250に変わります。

このように、VLOOKUP関数で参照する場合の1列目に、検索で使いたいセルの中身を結合しておくことで可能になる抽出ワザですので、覚えておきましょう。

今回は2つの条件での絞込み・抽出を行いましたが、もちろん3つ以上の条件で絞り込む事も出来ますし、テキストだけでなく日付や時間での絞り込みも可能です。

VLOOKUP関数は使いこなせるようになるまでとても難しい関数ではありますが、使いこなせると途端に便利になる関数でもあります。

ですので、複数条件での絞り込みをマスターしたい場合は、いろんなサンプルを書いてみて試行錯誤すると良いでしょう。


関連記事