• 公開日:
  • 更新日:

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

Google スプレッドシートのVLOOKUP関数で複数条件で検索する方法をご紹介します。

スプレッドシートでよく利用されるVLOOKUP関数では、1つのセルだけでなく、複数のセルの内容を検索条件として、データを抽出したいケースがあります。

基本的な複数条件の検索方法と、AND検索やOR検索の方法をそれぞれ詳しくご紹介します。

VLOOKUP関数とは?

VLOOKUPとは「垂直方向に検索する」という意味があり、VLOOKUP関数は指定されたキー(検索値)に基づいて、表の特定の列から情報を抽出することができる関数です。

VLOOKUP関数は以下のような引数を指定します。

=VLOOKUP(検索キー,範囲,指数,[並び替え済み])
  • 検索キー:検索する値
  • 検索範囲:検索対象の範囲
  • 指数:値を返す列の指数。「範囲」の先頭列を1とします。
  • 並び替え済み:検索対象の列(指定した範囲の先頭列)が並べ替え済みであるかを指定。TRUEの場合は、「検索キー」に最も近い値が返されます。

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

スプレッドシートのVLOOKUP関数は基本的には1つの条件での検索をサポートしていますが、複数条件で検索するためには工夫が必要です。

複数条件で検索するには、検索キーとして使用する値を結合して一意の検索キーを作成し、その検索キーをVLOOKUP関数の第1引数に指定します。

AND検索(かつ)の場合

列を挿入

VLOOKUP関数を使用したい表の左端に列を挿入します。

左端の列の最上部(アルファベット部分)を右クリックして、②表示されたメニューから「左に1列挿入」をクリックします。

&の式を入力

列が挿入されたらその列のセルに、検索したい2つのセルを「&」で結合した式(例:=D2&F2)を入力します。

ドラッグ

検索したい2つのセルの情報が結合されたら、表の下までドラッグします。

関数入力

結果を抽出したいセルに、「=VLOOKUP(D2&F2,A2:F27,5,FALSE)」を入力します。

「社員名」が「YAMADA」かつ「発送地」が「北海道」のデータが抽出されます。

完了

結果が抽出されました。

元々のデータから「&」を用いた式で、複数列を1つに結合した列(A列)に対し、VLOOKUP関数を用いて複数の検索キーを結合した式で検索することで、AND検索が実現します。

OR検索(または)の場合

関数入力

OR検索の場合も、上記で紹介したAND検索と同様に、左に検索用関数の列を「&」を用いて作ります。

=VLOOKUP("*SAITO*",A2:G27,5,FALSE)」と入力することによって、「メイン担当」と「サブ担当」いずれかを「SAITO」が担当している場合のデータが抽出されます。

アスタリスク「*」で検索キーを入力することにより、「SAITO」というデータが指定したセルのどこかにあればという指定になります。

完了

結果が抽出されました。

元々のデータから「&」を用いた式で、複数列を1つに結合した列(A列)に対し、VLOOKUP関数とアスタリスクを用いた検索を行うことで、OR検索が実現します。