「Excel(エクセル)」には業務改善に役立つ、さまざまな関数が存在します。その中でも、数式がややこしく難しい印象があるのが「VLOOKUP(ブイ・ルックアップ)関数」ではないでしょうか。使いこなせるようになると、手入力していた箇所を自動入力できるなど大幅な時間短縮になるものの、その難解さから敬遠している人も多いようです。

そこで今回は、書類作成等に便利なVLOOKUP関数について、概念から使い方の具体例、注意点をわかりやすくまとめました。この機会にVLOOKUP関数を攻略して、生産性の向上に役立てましょう。

VLOOKUP(ブイ・ルックアップ)関数とは

VLOOKUP関数とは、指定した表や範囲について、行ごとに数値や文字列を検索し、自動入力してくれる機能を持った関数です。

VLOOKUP関数を使うことで、ルーチン作業や値を扱う書類の作成、情報の管理などを行う際に、その手間を省くことができます。情報を一斉に上書きしたい場合にも、VLOOKUP関数を使えば一つ一つ手作業でコピペすることなく、一度に修正可能です。

またVLOOKUP関数には、「完全一致」か「近似一致」かを選択して検索できる特徴があります。まったく同じ値だけでなく、ある一定の基準に達した数値をまとめて算出したり、値が存在するかどうかを検索したりすることもできるため、使い方次第で多くの業務に反映できます。

VLOOKUP(ブイ・ルックアップ)関数はどのような場合に使うのか

VLOOKUP関数の「指定した範囲から値を検索して表示する」という特徴を上手に活かすには、以下のようなシーンで利用するのがおすすめです。一例として参考にしてみてください。

複数の一覧表を統合する

エクセル上で別々のシートにある複数の表を一つの表に統合したい場合、VLOOKUP関数を使えば、それぞれの情報を拾って統合してくれます。一つずつコピペをせずに済むので、作業時間の短縮になるでしょう。複雑な表を統合したいときなど、より効果的です。

書類(請求書・納品書・見積書等)を作成する

請求書・納品書・見積書・伝票といった書類を大量に作成する場合にも、VLOOKUP関数が活躍します。たとえば、商品番号・商品名・価格を入れたリストを用意しておけば、請求書や納品書には商品番号を入力するだけで必要な内容が自動入力され、短時間で書類を完成させることができます。

社員番号から所属部署や社員名を割り出す

人材管理の面において、社員番号から担当部署や名前を割り出して表示させることも可能です。名前は漢字のミスが生じやすい入力箇所なので、社員番号を使うことでミスの防止にも役立ちます。名前以外にも住所や電話番号、複雑な商品名を扱うようなシーンでも活用するとよいでしょう。

アンケート情報の集計

アンケートの結果を集計して分析したい場合にも、VLOOKUP関数を使って効率化を図ることができます。条件が一致する値をVLOOKUP関数で抜き出して合計値を算出すれば、グラフを作成して分析するという一連の流れがスムーズに行えます。

情報を一斉に更新する

大量の情報を修正したい場面でも、VLOOKUP関数が便利です。参照元のリストを上書きするだけで、情報の一斉更新が完了します。

VLOOKUP(ブイ・ルックアップ)関数の使い方

上記を踏まえて、VLOOKUP関数の数式の書き方を解説します。この関数を利用する場合は、あらかじめ「参照用のリスト」を準備する必要があります(下記で具体例を出して説明します)。このリストは非常に重要な役割を果たしますので、ミスや漏れのない一覧を作成してくださいね。

参照用のリストを用意したら、いよいよVLOOKUP関数の数式を記述していきます。基本となるVLOOKUP関数の数式は以下の通りです。

【VLOOKUP関数の数式】

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

検索値:参照元のリストから値を拾う際に、その糸口になる値を示します。たとえば、商品番号から商品名を検索したい場合、「商品番号」が検索値に当たります。ここには、値・セル参照・文字列を指定します。

範囲:参照するリスト全体を示します。セル範囲の参照、またはセル範囲名を指定します。

列番号:参照リストのうち、何列目を検索したいかを示します。範囲の先頭列には 1 を指定します。

検索方法:完全一致か近似一致かの検索方法を示します。論理値 (近似値を含めて検索 = TRUEまたは省略、完全一致の値を検索 = FALSE) で指定します。

【VLOOKUP関数を使って表を統合する方法】

image1.png
まずは上記のように2つに分かれた表を、左の表に統合したい場合についてみていきましょう。

今回は、左の表に足りない「出勤日数・残業時間」の情報を、VLOOKUP関数を使うことで補足し、統合していきます。

まず、2つの表を統合すると「氏名・所属部署・出勤日数・残業時間」の4列の表になるので、左の表のA・B列の右に「出勤日数・残業時間」を統合するスペースを作るため、C列の右に2列空白の列を挿入します。

空白となったⅭ~E列のうち、Ⅽ列に出勤日数、Ⅾ列に残業時間をVLOOKUP関数で表示させます。この時、Ⅽ・Ⅾ列にVLOOKUP関数を記入するのですが、その参照元となるリストが上の図の右の表です。これを「参照用リスト」と呼びます。

この参照用リストの出勤日数・残業時間をVLOOKUP関数で呼び出して、C・D列に表示させるのです。

実際にC2に入れるVLOOKUP関数は、このようになります。

出勤日数(C2)に入るVLOOKUP関数
=VLOOKUP(F2,$F$2:$H$7,2,FALSE)

VLOOKUP関数の数式、VLOOKUP(検索値,範囲,列番号,検索方法) に当てはめて読み解くとわかりやすくなります。検索値に名前を指定し、分離した右側の表を参照範囲に指定して、該当者の出勤日数と残業時間を表示させています。

このように、C・D列にVLOOKUP関数を入れて行くと、以下のような表になり統合が完了します。
image3.png

【VLOOKUP関数を使って請求書を作る方法】

image2.png
番号から商品名と単価を検索して、請求書の該当項目に自動入力させる場合は、以下のようなVLOOKUP関数を使いましょう。まずは、商品名や単価を記載した参照用のリストを準備します。

image4.png
請求書の「単価(D5)」に入るVLOOKUP関数
=VLOOKUP(B5,商品一覧!$A$2:$C$7,3,FALSE)
※シートは「商品一覧」と「請求書」の2つに分けておきます。
※請求書の合計金額欄は省略しています。

上記は「商品一覧」シートを参照しながら、商品番号で検索を行い、商品名と単価を自動で表示させています。これを応用すれば、納品書や伝票、報告書といったさまざまな書類作成において応用でき、作業時間も短縮できますよね。