今回は、Excelに用意されている「VLOOKUP」(ブイルックアップ)関数の基本的な使い方を確認します。Excelで作成した表の範囲を縦方向に検索して、指定したデータをスピーディーに抽出できるのが、VLOOKUP関数の特徴です。

本連載では、「よく使うけど忘れやすいMicrosoft Officeの操作」をキーワードに、Officeアプリケーションの使い方を解説していきます。記事の制作には、執筆時点で最新の状態にアップデートしたMicrosoft Office 2016を使用しています

VLOOKUP関数でデータを自動抽出

VLOOKUP関数を使えば、指定したデータに対応する値を自動的に抽出してセルに表示できます。たとえば、Excelで住所録を作成した場合に、名前を入力するだけで対応する電話番号を表示する、といった使い方が可能です。住所録の項目数が少なければ、表を目視して電話番号を確認するのも苦にはなりませんが、膨大な項目がある場合は、探したい名前を見つけるだけでも大変です。VLOOKUP関数は、このような手間を大幅に軽減して作業効率をアップしてくれます。複雑な作業も自動化できますが、今回は基本的な使い方を紹介しましょう。

VLOOKUP関数における数式の入力方法

  • 抽出結果を表示するセルを選択する
  • 数式バーに「=VLOOKUP(」と入力する
  • 抽出条件(検索値)を入力するセルを指定する
  • 数式を「,」で区切る
  • データを検索するセルの範囲を指定する
  • 数式を「,」で区切る
  • 抽出したいデータの列を指定する
  • 数式を「,」で区切る
  • 完全一致を条件とする場合は、数式に「FALSE」と入力する
  • 数式を「)」で閉じる

まずは、数式を入力したいセルを選んでから、シートの上部にある数式バーをクリックして入力状態にします(図1)。数式バーに「=VLOOKUP(」と半角で入力し(図2)、抽出条件(今回の例では名前)を入力するセルをクリックして数式に反映させます(図3)。

  • (図1)ここではF5セルをクリックして選択してから数式バーをクリックしています

  • (図2)数式バーに半角文字で「=VLOOKUP(」と入力します

  • (図3)ここではF3セルをクリックしています

続いて、「,」(カンマ)を入力して区切り、検索したい表の範囲をドラッグして数式に入力します(図4)。さらに「,」で区切って、データを検索したい列を指定します。今回の例では2つ目の列(C列)の値を抽出するので「2」を入力しています(図5)。「,」で区切ったら、最後に「完全一致」を表す因数となる「FALSE」を入力し、「)」で閉じて数式を完成させます(図6)。

  • (図4)ここではB3セルからD12セルまでをドラッグして検索範囲を指定しています

  • (図5)今回はC列の値(電話番号)を抽出したいので「2」を入力しました

  • (図6)「,」で区切って、完全一致の因数「FALSE」を入力して数式を完成させます

なお、この状態で[Enter]キーを押して実行しても、抽出結果は「#N/A」と表示されます(図7)。これは検索する値(今回の例では名前)が、まだ指定されていないためです。F3セルに検索したい値を入力して、[Enter]キーを押してみましょう。すると、入力した名前に対応する電話番号がF5セルに表示されます(図8)(図9)(図10)。VLOOKUP関数の基本的な使い方を理解しておけば、より複雑な作業を自動で実行させることも可能になります。いろいろと試してみてください。

  • (図7)F3セルに何も入力されていないと「#N/A」表示になります

  • (図8)F3セルに名前を入力して[Enter]キーを押します

  • (図9)F3セルで入力した名前が入った行のC列(数式で指定した列)の値がF5セルに表示されました

  • (図10)名前を入力するだけで対応する電話番号を確認できます

VLOOKUP関数が正しく動作しない場合

F3セルに名前を入力して[Enter]キーを押しても、F5セルの電話番号の表示が変わらないケースもあります。名前を入力後にF5セルを選択し、数式を再実行すれば表示が切り替わりますが、これでは効率的とはいえません。このような状況になっている場合は、「数式」タブを選択してリボンの表示を切り替え、「計算方法の設定」アイコンをクリックして「自動」を選択しましょう(図11)。これで名前を入力して[Enter]キーを押せば、対応する電話番号が表示されるようになります。

  • (図11)「数式」タブのリボンから「計算方法の設定」をクリックし、「自動」を選択してチェックを入れましょう