更新日:、 作成日:

エクセル VLOOKUP 関数の使い方をわかりやすく解説

はじめに

エクセル VLOOKUP 関数の使い方をわかりやすく解説します。

VLOOKUP 関数の引数にどういう値を設定すればいいのか解説します。

別シートのセルを指定する方法や、複数条件を指定する方法なども紹介します。

このページの内容は古いです。最新の内容は「VLOOKUP 関数」をご覧ください。

VLOOKUP 関数の使い方

VLOOKUP 関数」の引数に何を指定すればいいのか、1 つずつ解説します。

=VLOOKUP(検索値, 範囲, 列番号, 検索の型)

第 1 引数 (検索値)

次のようなデータがあります。この中から何を検索したいですか?

20

「No.」を検索して名前を取得したい。「名前」を検索してバージョンを取得したい。その検索する値を第 1 引数に指定します。検索する値がセル「B8」に入っているのなら次のように入力します。

=VLOOKUP(B8
21

第 2 引数 (範囲)

ここでは「No.」を検索することにします。では何を取得しますか?

「名前」を取得したい。「バージョン」を取得したい。このように検索する「No.」と取得したいデータが収まる範囲を第 2 引数に指定します。「名前」「バージョン」「個数」のどれかを取得したいならその全てが範囲に収まるように次のように入力します。

=VLOOKUP(B8,B3:E5
22

「No.」ではなく「名前」を検索するなら次のような範囲になります。

23

重要なのは、範囲の左端の列が検索される列になることです。逆に言えば「名前」を検索して「No.」を取得するようなことはできません。

24
左端以外の列を検索するには「INDEX と MATCH 関数を組み合わせる」をご覧ください。

第 3 引数 (列番号)

「No.」から「名前」を取得するとき、名前の列は何番目ですか?

検索する「No.」の列を 1 として「名前」は 2、「バージョン」は 3 のようになります。このように取得したい列の番号を第 3 引数に指定します。「名前」の列は 2 番目なので次のように入力します。

=VLOOKUP(B8,B3:E5,2
25

第 4 引数 (検索の型)

FALSE を指定します。

=VLOOKUP(B8,B3:E5,2,FALSE)

FALSE を指定すると検索する値に一致するデータがあるときに値を取得します。TRUE や省略すると一致しなくても近いデータを取得します。通常は一致するときだけデータを取得したいので FALSE を指定します。

使用例

「No.」を検索して「名前」を取得します。

=VLOOKUP(B8,B3:E5,2,FALSE)
26

「名前」を検索して「個数」を取得します。

=VLOOKUP(B8,C3:E5,3,FALSE)
27

ここまで読んでいただけると、何を検索してどの範囲から何番目のデータを取得するか、わかるようになっていると思います。

別シートを参照する

別シートにあるデータから値を取得するにはどうすればいいか解説します。

取得する値が別シートにあるときの参照方法は シート名!セル名 のように入力します。セル名の前に シート名! を付けると、そのシートのセルを参照できます。

シート「Sheet1」に「VLOOKUP 関数」を入力するセルがあります。

28

シート「Sheet2」に取得したいデータの範囲があります。

29

シート「Sheet2」のセルを参照するには Sheet2!B3:E5 を入力します。

シート「Sheet1」に入力した「No.」をシート「Sheet2」から検索して「名前」を取得しています。

=VLOOKUP(B3,Sheet2!B3:E5,2,FALSE)
30

複数条件を入力する

検索する値が一つだと複数の項目と一致してしまうときにどうすればいいのか解説します。

次のようなデータがあります。「名前」から「個数」を取得するときに、一致するデータが複数あるため一つに絞り込めません。

31

こういうときは検索する値を複数にします。今回は「名前」と「バージョン」の二つを検索します。複数条件に対応するために検索専用列を作成します。この列には「名前」と「バージョン」を結合した値を入力します。

=C3&D3
32

VLOOKUP 関数の第 1 引数に検索する「名前」と「バージョン」を結合した値を入力します。

=VLOOKUP(B9&C9
33

検索専用列を第 2 引数の範囲に含めると複数条件に対応できます。

=VLOOKUP(B9&C9,B3:E6,4,FALSE)
34

検索専用列を見せたくないなら、列を非表示にします。