Excel

vlookupとは? 使い方と複数条件の使用例(ブイルックアップ関数)

Excel
この記事は約5分で読めます。

EXCELを使うときによくVlookup関数を使う場面が多いです。vlookup関数を使えるかどうかで作業効率が全然違いますし、知らない人に使い方を教えると本当に驚かれますし、喜ばれます。

ビジネスパーソンだけでなく、EXCELを使う人であれば必ずVlookup関数は使えた方がいいので、これを機会にマスターしてください。

EXCELのVLOOKUP関数とは

VLOOKUP関数はエクセルの標準関数の1つです。
テーブルやリストから、条件に合う文字などを検索することが可能な非常によく使われる関数になります。
しかし、使い方がやや難しく最初はどうやって使用すればいいか悩む方が多いです。
今回は実際に使われる使用例を用いながら、解説していきます。

VLOOKUP関数の読み方

VLOOKUPは「ブイルックアップ」と読みます。
”垂直”を表す「Vertical」と、”探す”を表す「Look up」が組み合わさって出来ています。
すなわち、「垂直方向から該当する文字を探す」という意味の関数名になります。

VLOOKUP関数の使い方

VLOOKUP関数は主に以下のような場面で使われます。

・仕入れデータや売上データから商品の価格や個数を調べる
・在庫管理データから在庫数を調べる
・社員管理シートから調べたい社員の出身地を検索する
・請求書や納品書作成時に商品データから価格を取得

など多岐にわたります。
様々な用途に使うことができますが、慣れていないと使いこなすことが大変です。

VLOOKUP関数の構文

=VLOOKUP(検索値、範囲、列番号、検索方法)

検索値:検索したい値を入力します。商品コードや商品名など、データを探す際の値を指定します。直接文字を入力することもできますが、検索したい文字を含んだセルを指定することが多いです。

範囲:検索値を探す範囲を指定します。

列番号:上記の範囲の中で、取得したい値の列が左から何番目かを指定します。

検索方法:検索結果が「完全一致」か「近似値」のどちらになるかを選択し、「true」か「false」の文字を入力します。
「false」の場合は検索値と完全に一致する内容だけが返され、「true」の場合は検索値を超えない最大の値を返します。

基本的には「false」を指定しておけば問題ありません。「true」は予算など一定の数値を超えない値を調べたい場合に使います。

VLOOKUP関数の構文例

実際にVLOOKUP関数を使うと上記のような形になります。
検索値に検索したい値が入ったセルを指定します。「ナス」が書かれているC2を選択しています。
範囲には検索する範囲を選びます。青枠内が範囲となります。
列番号に2を指定することによって、範囲の中から2番目の列が指定されます。今回の場合は価格の列(緑枠)が選択されます。
最後はfalseにすることによって、完全一致のみ取得するようにします。

現在はC2に「ナス」が入力されているので、結果として100円が返ってきます。
C2の値を「トマト」にすると200円、ジャガイモにすると80円が表示されます。

VLOOKUP関数の使用例1

VLOOKUP関数が実際にどのような形で使われているか2つの例を使用してご紹介します。

1つ目の例は請求書を作成するケースです。
下記のような商品コード一覧から請求書を作成していきます。
テーブル名を「コードテーブル」としています。


請求書のテンプレートは以下のような形です。
請求書内に商品コード番号を入力すると商品名と単価が自動で挿入されるようにします。

商品名のところ(C5のセル)には「=VLOOKUP(B5, コードテーブル, 2 ,FALSE)」と入力します。
B5のセルにコード番号を入力すると、コードテーブル内で2列目の中から番号と一致する値が表示されます。この場合、2列目は「商品名」となります。

また単価のところ(E5のセル)には「=VLOOKUP(B5, コードテーブル, 3 ,FALSE)」と入力します。
同じくB5のセルにコード番号を入力すると、3列目である「単価」の中からコード番号と一致する値が表示されます。

実際にB5にコード番号を記述して試してみます。
今回は消しゴムのコードである「102」を入力します。
すると、商品名の欄に「消しゴム」が、単価の欄に「30」が自動で挿入されます。

合計金額などの欄にsum関数などを用いることで、請求書のテンプレートが完成します。

VLOOKUP関数の使用例2

2つ目の例では顧客リストから1人の顧客の情報を検索したいケースです。
下記のような顧客リストを作成します。また、検索欄も事前に作成しておきます。

氏名のところ(C3のセル)には
=VLOOKUP(B3, コードテーブル, 2, FALSE)と入力します。
B3のセルに顧客コードを入力すると、コードテーブル内で2列目の中から番号と一致する値が表示されます。この場合、2列目は「氏名」となります。
D3の性別の欄、E3の住所の欄にも同様にVLOOKUP関数を挿入します。
D3: =VLOOKUP(B3, コードテーブル, 3, FALSE)
E3: =VLOOKUP(B3, コードテーブル, 4, FALSE)

実際にB3に顧客コードを入力して、試してみます。
顧客コードの欄に「1015」を入力すると、以下の項目が自動で表示されるようになります。

氏名に「加藤 優」
性別に「男性」
住所に「東京都」

VLOOKUP関数の複数条件の使い方

VLOOKUP関数を使っていて複数条件で検索したいときが出てきます。しかし、VLOOKUPは原則1つの条件しか選択できません。このようなケースを実行したい場合は少し工夫する必要があります。

使用例2の顧客リストから「東京都の女性」の名前を知りたい場合

まず顧客リストから住所と性別を組み合わせた列を作成します。
文字を繋げる方法は「&(アンド)」を使います。B6の値に「=F6&E6」と入力すると自動的に繋がった文字が表示されます。

氏名の欄(C3のセル)に「=VLOOKUP(B3, コードテーブル, 3, false)」と入力します。
すると、条件であるB3に文字が入力されると、コードテーブルの中から条件と一致する3列目の氏名が表示されます。

実際にB3に条件を入力して試してみます。


「東京都女性」と入力すると、条件と一致する「荒井 未来」が表示されました。

ただし、この方法では同じ条件のものは複数表示することができません。
例えば「東京都男性」が複数存在した場合は、最初の一人しか表示しません。もし複数表示させたい場合は他の機能を使う必要があります。

コメント