
今回は、VLOOKUP 関数 の応用編として、複数の検索値(条件)から目的の情報を抽出する方法をご紹介していきます。
なお、当サイトでは Excel ではなく Numbers を使って解説しています。
目次
- VLOOKUP 関数
- VLOOKUP 関数の式の確認
- VLOOKUP 関数で複数の条件を指定する
- 「&」を使って検索値を結合する
- VLOOKUP 関数を書く
- 検索値 を「&」で結合して指定
- 列範囲を指定
- 返す列を入力
- 検索方法を選択
- 入力結果
VLOOKUP 関数
VLOOKUP 関数は、表Aと表Bの間でキーとなる値「検索値」を指定し、別表の指定した範囲を縦方向に検索したうえで、それと一致する値または近似値の中から欲しい値を取り出すことができる関数です。
さて、基本的に VLOOKUP 関数 で指定できる検索値は1つですので、複数の条件を指定したいときはどうすればいいでしょうか。
よく使われる方法としては、複数の条件をひとつに統合したセルをつくり、それを VLOOKUP 関数 の「検索値」に設定することです。
まずは VLOOKUP 関数の式をおさらいしましょう。
VLOOKUP 関数の式の確認
「検索値」を、「近似一致(任意)」に従って「列範囲」の左端列から検索し、一致する行の「返す列(左から数えた列番号)」にある値を抽出します。
= VLOOKUP ( 検索値① & 検索値②, 列範囲, 返す列 [, 近似一致] )
検索値 | 検索する値を指定 |
列範囲 | 「検索値」を左端列に含むセル範囲を指定 |
返す列 | 「列範囲」から抽出する列番号を指定 |
(近似一致) | ・近似一致:「TRUE」または 省略 ・完全一致:「FALSE」 |

VLOOKUP 関数 で複数の条件を指定する
ここでは例として、「氏名」と「生年月日」の2つの情報をもとに送付先の住所を抽出するように設定してみます。

「&」をつかって検索値を結合する
まずは前準備として、氏名と生年月日のセルを「&」を使ってひとつのセル内に結合しておきます。
VLOOKUP 関数 で検索をするための「列範囲」は左から指定しますので、左端に作りましょう。

= B2 & C2

↓「氏名」と「生年月日」を結合したセルが出来上がりました。

VLOOKUP 関数を書く
Step 1
住所を表示させるセルにカーソルを合わせ、「= VLOOKUP」と入力するか、「挿入」メニューから「新規数式」を選択します。

「参照」から VLOOKUP を選択するか、検索窓に「VLOOKUP」と入力しても探すことが出来ます。「関数を挿入」をクリックします。

Step 2 検索値 を「&」で結合して指定
「検索値」には、氏名のセルと生年月日のセルを「&」で繋いで指定します。
= VLOOKUP ( F2 & F3, 列範囲, 返す列, 近似一致 )

Step 3 列範囲を指定
続いて「列範囲」を指定します。文字列を結合したセルの列を基準として、住所までのセル範囲を指定します。
= VLOOKUP ( F2 & F3, A2:D10, 返す列, 近似一致 )

Step 4 返す列を入力
続いて、「返す列」を入力します。
表示させたい「住所」が「列範囲」の中で「左端から数えて何列目にあるか」を数値で入力します。ここでは左から「4」列目になります。
= VLOOKUP ( F2 & F3, A2:D10, 4, 検索方法 )

Step 5 検索方法を選択する
最後に、検索値を探す方法を指定します。
ここでは「▼」をクリックしてプルダウンを表示させ、「完全一致」を選択します。
= VLOOKUP ( F2 & F3, A2:D10, 4, 完全一致 )

↓

入力結果
Enter を押して式を反映させたら、指定した条件の通りになっているか確認しましょう。
