【スプレッドシート】VLOOKUP関数の検索を複数条件にする方法

記事内の「“”」「‘’」が全角になっていますが、スプレッドシートで指定する場合は半角に変更してください

本記事では、スプレッドシートのVLOOKUP関数で複数条件を指定する方法を解説していきます。

目次

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

VLOOKUP関数を使ってデータを抽出する際、条件を複数指定したい時が多々あります。

ですが、VLOOKUP関数で指定できる条件は基本的に1つです。

では、どうすれば複数の条件で検索できるのでしょうか。

今回は以下のサンプルを用いて解説していきます。

やりたいこと

「2022/08/02」の「すいか」の売上を取得する

条件の列を結合した新しい列を用意する

VLOOKUP関数で複数条件を使うには、条件に指定する列を結合し新たな列を元データに用意する必要があります。

今回の例で言うと「日付」と「項目」が条件になりますので、「日付+項目」となるような列を用意し条件を結合します。

追加した列に入れる関数

=text(C3,”yyyy/mm/dd”)&D3

VLOOKUP関数は条件列から右側の値しか取得できないので、結合する列は基本的に左端に作成しましょう。

結合した列をキーにし参照範囲を広げる

これで元データの調整は完了です。

新しく追加した列が検索キーになるようVLOOKUP関数の参照範囲を広げます。

=VLOOKUP(“2022/08/02″&”すいか”,B3:F11,5,false)

「2022/08/02」の「すいか」と言う複数条件でも欲しい情報を取得することができました。

部分一致で検索もできる

VLOOKUP関数の検索キーにワイルドカードを使えば、部分一致での検索(あいまい検索)も可能です。

例えば、「2022/08/02」の「み」が付く項目の売上を取得したい場合は以下のように指定します。

=VLOOKUP(“2022/08/02″&”*み*”,B3:F11,5,false)

画像のように「2022/08/02」の「みかん」の売上を取得することができました。

部分一致(あいまい検索)は他の関数でも使えるので覚えておくと良いでしょう。

VLOOKUP関数の#N/Aエラーをiferrorで非表示にする

ここまで、VLOOKUP関数で複数条件で検索する方法をご紹介しましたが、条件に一致する値がない場合「#N/A」が返ってきます。

このエラーはIFERROR関数を使うことで非表示にすることが可能です。

=IFERROR(VLOOKUP(“2022/08/02″&”ぶどう”,B3:F11,5,false))

「2022/08/02」に「ぶどう」と言う条件がないためエラーが表示されますが、IFERROR関数で非表示にしています。

まとめ

今回は、スプレッドシートのVLOOKUP関数で複数条件を指定する方法をご紹介しました。

VLOOKUP関数のほかの使い方や応用テクニックを知りたいと言う方は、ぜひこちらの記事もチェックしてみてください。

補足

今回ご紹介した方法は、元データの列追加ができる場合のみ有効です。

場合によっては元データを弄れない可能性もあるため、そういった場合はQUERY関数を使うと良いでしょう。

目次