ExcelエクセルのVLOOKUP関数の使い方

今日は、Excel(エクセル)で必ず覚えておきたいVLOOKUP関数使い方を解説してきます。

VLOOKUPを上手く使えば作業効率もグンと上がるので、今日ここで覚えてしまいましょう!

Excel(エクセル)で覚えておきたいVLOOKUP関数の使い方

まず少しだけ、VLOOKUP関数とはなんぞや?という話をしたいと思います。

VLOOKUP関数とは?どんなときに使えるの?

VLOOKUP関数は簡単にいうと「データ表の中から必要な情報だけを引っぱり出してくることができる」関数です。

指定した検索値に一致するデータを探して該当するデータ(一致するデータと同行のデータ)を取り出すことができます。

VLOOKUP関数の公式

VLOOKUP関数の公式


=VLOOKUP(検索値 , 検索範囲 , 列番号 [ , 検索方法 ])


検索値:検索したい値
数値やセル番号、文字列(「"」で囲む)を指定することができる


検索範囲:検索をかけたい範囲
検索値を左端列とするかたちで範囲をしていする必要がある(必ず検索値のある列を一番左の列に位置させる必要がある)


列番号:取り出したい列
抽出したいデータが範囲中で左から数えて何列目にあるかを数字で指定する

検索方法:検索する形式
検索する形式を以下の2パターンより選択する
完全一致で検索するなら・・・「0」または「FALSE」と記述
近似値検索(※)をするなら・・・「1」または「TRUE」と記述するかまたは省略


※近似値検索とは:

一致するデータが見当たらなかった場合に検索値未満でかつ最も大きい値を検索して抽出する方法


VLOOKUP関数の2つの検索方法の違い

近似値検索を「文字列の部分一致やあいまい検索」と混同することがあるので注意しましょう!

検索方法を選ぶときの注意

近似値検索(1またはTRUE)とは、数値上において「近似値をひろってくる」検索形式のことなので検索値が文字列の場合は、近似値検索を使うことはできません

近似値検索 =数値上の近似値検索
≠ 文字列の部分一致・あいまい検索

そしてVLOOKUP関数がどんな仕組みで・どのようにデータ処理をして計算しているのかというと・・・

VLOOKUP関数のしくみ

指定した「検索範囲」の左端列の中から「検索方法」に従って「検索値」を検索して場所を探しあてる

一致した検索値と同じ行の「列番号」に位置している列のデータをセルに返す

という仕組みで成り立っている
VLOOKUP関数の仕組みをくわしく解説


この仕組みを利用すると、

  • 指定範囲の中に特定のデータがあるかないかを確認する
  • 2つのデータ群を比較して重複データがあるかないかを確認する
  • 指定範囲の中から特定のデータを探してそれに紐づく(同行の)データを抽出する

このようなことが簡単に処理することができます。

この記事を見ている人におすすめの本

VLOOKUP関数の具体的な使い方

では、VLOOKUP関数の使い方を【3つの例題】で紹介します。

基本的にはこの公式にあてはめるだけ

=VLOOKUP(検索したい値 , 検索する範囲 , 取り出したい列番号 [ , 検索する方法 ])

型番に一致する商品の「商品名」を取り出したい

型番から商品名を取り出す

例:商品の型番を入力したら、リストからそれに該当する商品名を取り出してきたい
型番から商品名を取り出す例

 VLOOKUP関数で引数を入力していく

 検索値:「A3


 検索範囲:「A7:B13


 列番号:「2
 取り出したいデータの列は範囲の左から「2」列目


 検索方法:0
 完全一致で取り出すので「0」または「FALSE」

それらを公式にあてはめると
=VLOOKUP(A3,A7:B13,2,0)関数式に引数を入力

 セルA3に入力した型番に一致する商品の商品名が表示される
VLOOKUP関数の使い方1(指定した型番に一致する商品の商品名が取り出された)

リスト番号に一致する人物の「氏名」と「住所」を取り出す

今度は表題パターンで複数データを取り出してみます。

応募NO.から氏名と住所を取り出す

例:セルG3に応募No.を入力したら、応募者リストから該当する応募者の氏名と住所を取り出したい
NO.から指名と住所を取り出す例

VLOOKUP関数に引数を入力していく

 検索値:「G3


 検索範囲:「$A$3:$E$13


 列番号:「2
 取り出したいデータの列は範囲の左から「2」列目


 検索方法:0
 完全一致で取り出すので「0」または「FALSE」

これらを公式にあてはめると
=VLOOKUP(G3,$A$3:$E$13,2,0)
応募ナンバーに一致する人の氏名を取り出す

一致するNO.の氏名が表示される
検索値に一致したデータが表示された





ここからさらに住所も取り出したい場合は・・・
②で入力した関数式の「列番号」だけ変えればOKなのでオートフィルで関数式をコピーして列番号のみ変更する
オートフィルで関数式をコピーして列番号のみ変更

列番号:「4
取り出したいデータの列番号は範囲中の左から数えて「4」列目

セルH3の関数式コピー ➛ セルI3にペーストし列番号を「4」へ変更すると
=VLOOKUP(G3,$A$3:$E$13,4,0)
関数をコピーして列番号だけ変更

一致したNO.の住所が表示される
指定した応募NO.に一致する人の住所が表示






あとは、表全体を埋めたければ関数式を下段へコピーするだけでOK

セルH3:I3を選択した状態で下段までオートフィルコピーする(※オートフィルとは
VLOOKUP関数の使い方2(セルH3とI3の2つのセルの関数をまとめて下段にコピーする)

表全体に関数式が反映される

氏名・住所がすべて算出された

2つのデータ列を比較して重複があるかチェックする

VLOOKUP関数を使えばデータの重複を探すこともできます。

2つのデータ列の重複を探す

例:C列のデータがA列にあるかどうか(重複しているかどうか)を確認したい
2つデータ列の重複をチェックする例

セルD3にVLOOKUP関数と引数を入力していく

 検索値:「C3


 検索範囲:「$A$3:$E$13


 列番号:「1
 取り出したいデータの列は範囲の左から「1」列目


 検索方法:0
 完全一致で取り出すので「0」または「FALSE」

これらを公式にあてはめると
=VLOOKUP(C3,$A$3:$E$13,1,0)
引数を公式にあてはめてVLOOKUP関数を入力

表示されたデータによって重複があるかどうかを判別する
「#N/A」:エラー値
=検索範囲にデータが見つからなかったということを意味する(つまり重複がなかったということ)
戻り値によって重複ありなしを判別する

あとはセルD3の関数式をオートフィルで下段までコピーする
(セルD3を選択して右下にカーソルをあて「+」が出た状態で、左クリックしたままD13までドラッグする)
関数式をオートフィルでコピー

全セルで重複あり・なしが判別できるようになる
全セルの重複チェックができる

重複あり・なしのイメージ化

ポイント:#N/Aが示す意味

エラーを意味する「#N/A」ですが、
もっと詳細に言うと「何かしらの原因で記述した関数・数式によるデータ処理が正常に行われなかった」という意味合いになります

今回の例では『重複なし』を意味しましたが、「記述した関数・数式に記述ミスがあったり」「指定したデータが見つからなかった」場合など、エラーが意味する内容はシチュエーション毎に変わっていきます

この記事を見ている人におすすめベストセラー

今日はVLOOKUP関数の使い方について解説してきました。

VLOOKUPはExcelのなかでも3本の指に入るほど使用頻度が高く、うまく利用すればデータ処理スピードも格段に速くなるのでぜひぜひ使い方を覚えちゃいましょう。