Excelを使っていると、「一覧表の中から特定の情報を探して表示したい」という場面は非常に多くあります。
売上管理や在庫管理、人事データの確認など、業務のさまざまなシーンで必要になるのがデータ検索です。
そんなときに活躍するのが VLOOKUP(ブイルックアップ)関数 です。
VLOOKUPはExcelの中でも使用頻度が高い関数のひとつですが、「エラーが出る」「思った結果にならない」と苦手意識を持つ方も少なくありません。
この記事では、VLOOKUP関数の基本的な考え方から実務での使い方、よくあるエラーの原因、注意点や代替関数までをわかりやすく解説します。
Excel初心者の方はもちろん、なんとなく使ってきた方の理解を深める内容です。
VLOOKUP関数は、表の中から指定した値を探し、同じ行にある別の列の値を取り出す関数です。
構文は次のとおりです。
=VLOOKUP(検索値, 範囲, 列番号, 検索方法)
それぞれの意味は以下の通りです。
FALSE → 完全一致TRUE → 近似一致代表的な使い方として、「商品コードから商品名を表示する」「社員番号から氏名を取得する」といった場面が挙げられます。
次のような商品マスタ表があるとします。
| 商品コード | 商品名 | 単価 |
|---|---|---|
| A001 | りんご | 120 |
| A002 | みかん | 100 |
| A003 | バナナ | 80 |
商品コード「A002」から商品名を取得する場合、数式は次のようになります。
=VLOOKUP("A002", A2:C4, 2, FALSE)
この式では、
という処理が行われ、結果として 「みかん」 が表示されます。
VLOOKUPを使っていると、次のようなエラーが表示されることがあります。
検索値が見つからない場合に表示されます。
主な原因は以下の通りです。
列番号が範囲外の場合に発生します。
列番号に数値以外が指定されている場合に表示されます。
エラーが出た場合は、検索値・範囲・列番号・検索方法の4点を順番に見直すことが重要です。
検索方法に「TRUE」を指定すると、近似一致検索が行われます。
点数評価やランク分けなどでよく使われます。
| 点数 | 評価 |
|---|---|
| 0 | D |
| 60 | C |
| 80 | B |
| 90 | A |
85点の評価を求める場合、次の式を使用します。
=VLOOKUP(85, A2:B5, 2, TRUE)
結果は 「B」 になります。
近似一致では、検索列が昇順で並んでいる必要がある点に注意しましょう。
便利なVLOOKUPですが、次のような制約があります。
これらの弱点を理解したうえで使うことが、実務では重要です。
商品コードから商品名を自動表示し、見やすい売上表を作成できます。
商品コード入力だけで単価を取得し、金額計算を自動化できます。
社員番号から氏名・部署を取得し、名簿や給与計算に活用できます。
=IFERROR(VLOOKUP(A2, 商品マスタ!A:C, 2, FALSE), "未登録")
VLOOKUPの弱点を補えるのが、INDEX関数とMATCH関数の組み合わせです。
=INDEX(B2:B4, MATCH("A002", A2:A4, 0))
といったメリットがあります。
新しいExcelでは XLOOKUP関数 が使用できます。
=XLOOKUP("A002", A2:A4, B2:B4, "未登録")
列番号の指定が不要で、VLOOKUPの欠点をほぼ解消できるのが特徴です。
VLOOKUP関数は、Excelでのデータ検索を支える基本かつ重要な関数です。
構文とエラーの原因を理解すれば、売上管理・在庫管理・人事業務など幅広い場面で活用できます。
まずはVLOOKUPをしっかりマスターし、慣れてきたらINDEXやXLOOKUPにも挑戦することで、Excelの検索機能を自在に使いこなせるようになるでしょう。