元エンジニアPMのプロダクトマネージャーお役立ち情報

スタートアップから大規模プロダクトまで担当している元エンジニアの筆者が、事業開発・プロダクトマネジメントに役立つ情報を発信します

VLOOKUP関数の使い方を覚えよう【10分で覚えて数時間の業務効率化】


様々なデータ集計・レポートを作る際に欠かせないのが、VLOOKUP関数です。別々のシートにある共通した項目を軸に、必要な情報だけを抜き出したりすることができるエクセルの関数の中でも優れものですが正しく使えていますでしょうか?
大学教員の7割が、VLOOKUP関数を使えない。使えるようになったことで8時間掛かっていた業務が10分で終わるようになったなどの記事もあるように、VLOOKUP関数は苦手意識を持たれている方も多いです。

reseed.resemom.jp

一般的に、VLOOKUP関数を困らず操作できると、エクセルを使いこなせる、ある程度使っていると言えるスキルと言っても差し支えはないでしょう。それくらい日々の業務で役に立ちますし、VLOOKUP関数ができる人を募集する求人もあるくらいです。

今回はそんなVLOOKUP関数を分かりやすく説明していきます。

VLOOKUP関数とは?

VLOOKUP(ブイルックアップ)とは、垂直を意味する「Vertical」の頭文字「V」と探すを意味する「LOOKUP」を組み合わせたExcelの関数です。指定された範囲の中で、縦にあたるエクセルシートの列から、条件にあったものを見つけ特定のデータに対する値を探し出す関数になります。似た関数でHLOOKUP(エイチルックアップ)がありますが、これは水平を意味する「Horizontal」の頭文字のHを取っています。指定された範囲の中で、横に当たる行から条件にあったデータを探しだす関数ですね。

VLOOKUP関数の使い方

VLOOKUP(検索値,検索範囲,取り出したい列の番号,検索方法)

VLOOKUPでは、検索したい値をどの範囲から探すか?をまず指定します。一致したデータから、何番目の列の番号を取り出したいか?を指定します。
最後の検索方法は、TRUEかFALSEで指定しますが、完全一致の場合はFALSE,近い値も検索する場合はTRUEで指定します。
VLOOKUPを使うときは完全一致のケースが多いので、とりあえずFALSEで指定すると思っていただいても問題ありません。(後半TRUEの使い方もご説明します)

例えば次のような表があったとします。

商品名 価格 カテゴリー
りんご 300 果物
バナナ 200 果物
マグロ 1000
鶏むね肉 200

A列1行目からりんごが始まるとした場合、りんごのカテゴリーを知りたい場合は、VLOOKUP("りんご",A1:D3,3,FALSE)と指定することで、果物という値を表示することができます。

VLOOKUP関数を実際にエクセルで使ってみる

先程の例だと、VLOOKUP関数を使わなくたって分かるよ!と思う方もいると思います。
実際の業務では、それぞれの部門ごとやデータ管理ごとに、異なる場所にデータが管理されていることが多いですよね?別々のCSVやエクセルファイルを貰って、必要なデータを出してくれと言われることも多々あると思います。そういう複数のデータを組み合わせて必要なデータを抽出するときにVLOOKUP関数は活躍します

これは先程の表に加えて、今日の入荷数という別のシートがあることを考えてみました。(本来なら別のシートですが、図解のために1枚で表現します)
あなたが先程の表に今日入荷した数を付けて報告してくれと上司から言われたとしましょう。数が少なければ自力で入力しても良いですが、めんどくさいですよね。こういうときにVLOOKUP関数を付けてあげれば、この通り1分もかからず集計することができます。


=VLOOKUP(B5,$G$5:$I$8,2,FALSE) こうすることで、今日入荷した数を先程の表に新しく列として追加することができました。
ちなみに先程は、"りんご"と直接指定していましたが、B5のように対象のセルを指定できます。また範囲は絶対指定にするために$G$5:$I$8にすることで、範囲を拡張しても動くようにしています。
いかがですか?一度覚えてしまえば集計時間がぐっと短くなることが伝わったでしょうか?

VLOOKUP関数の検索方法TRUEはいつ使うのか?

先ほどデータ取得の検索方法はTRUEかFALSEがあると書きました。「FALSE=完全一致の値を検索」と「TRUE=近い値も検索」の二者択一で指定できるのですが、TRUEはいつ使うのでしょうか?
さきほどの表で、商品と本日の入荷をかけ合わせてみました。これに加えて入荷した数により、手数料が変わるとしましょう。


ところが手数料は、10~100でいくら、100~300でいくらのようにある程度範囲で区切られてきます。こういう範囲で指定されている場合に、検索方法をFALSEにすると該当せずエラーになってしまいます。
VLOOKUPの検索方法でTRUEを使うときは、このように全く同じ値は存在しないが、近しい値からデータを出したいときに使います。

いかがでしたでしょうか?なんとなくVLOOKUP関数の使い方や、思ったよりも難しくないことが伝わりましたでしょうか?
VLOOKUP関数が使えると、様々な集計場面で役に立ちますのでぜひマスターして業務効率化につなげてくださいね。