最も身近なデータ活用ツールといっても過言ではないMicrosoft Excel。WebデータベースやBIツールが普及し始め用途によっては脱Excelが推奨される場面もありますが、その普及度や汎用性から基本的な使い方は覚えておくべきツールです。
そんなExcelで覚えておきたい関数が「VLOOKUP関数」。2020年1月にはVLOOKUP関数の強化版といえるXLOOKUP関数が追加されました。
本記事では、VLOOKUP関数・XLOOKUP関数の基本的な使い方を画像付きでわかりやすくご紹介します。
VLOOKUP関数は“指定した範囲の先頭列で特定の値を検索し、同じ行のデータを返してくれる関数”です。VはVertical(垂直)の略で、縦方向に探す(LOOKUP)ことからVLOOKUP関数と名付けられています。
以下のような仕事でよく発生する「データを検索して転記する」作業を自動化してくれるため、業務効率化の一手段としてExcelユーザーに多用されてきました。
・商品単価をリストから見つけ出し、価格計算を自動化する
・従業員名簿からIDに基づいて従業員名を転記する
・顧客名簿からIDに基づいて電話番号を取り出す
ちなみに列ではなく行を基準にデータを検索してくれる関数はHLOOKUP関数といいます。HはHorizontal(水平)の略を意味します。
それではVLOOKUP関数を実際に使ってみましょう。
以下の図の左の価格表から別シートに用意された台帳へ商品ごとの単価を転記し、それぞれの売上金額の計算に利用したいとします。
「ひとつひとつ手打ちすればいいんじゃ……」とつい思ってしまいますが、列が長くなるほど時間と手間がかかりますし、ミスの可能性も高まります。また、元の価格自体に変更があった場合台帳の内容を手打ちで変更するのも非効率です。
そこで、VLOOKUP関数で単価を価格表から台帳のC列に転記することにします。
VLOOKUP関数の構文は以下の通りです。
それぞれの引数について詳しくみていきましょう。
転記したいデータを探す基準となる数値や文字列です。
今回の例でいえば「商品A」「商品D」などの商品名が該当します。
今回は「台帳」シートのB列2行目以下のセルを参照するため、以下の通りに記述します。
検索値=B2
データを探すセルの範囲をここで指定します。
今回は別シートの「価格表」を参照してデータを探すため以下の通り前に「価格表!」とシート名を記述する必要があります。
範囲=価格表!$A$2:$B$7
「$」は前に置くことで参照する列または行を固定する(=絶対参照にする)役割があります。今回は範囲を限定して参照させたいため、絶対参照を用いました。行や列が固定される絶対参照($をつける)と固定されない相対参照(何もつけない)を使いこなすことは、Excel名人になるための必須条件です。
指定した範囲の左から何番目の列から転記するのかを数値で指定します。
今回は、単価を転記するため、「2」と指定します。
列番号=2
データをどのように検索するかを以下の2パターンで指定します。基本的には前者の「完全一致=FALSE(0)」を使うと覚えておいてください。
完全一致=FALSE(0):全く同じ値だけを探す
近似一致=TRUE(1):検索値以下の最大値から探す
書かないことも可能ですが、その場合は自動的に近似一致になります。
検索方法=0
さて、こうして以下の数式が完成しました。
=VLOOKUP(B2,価格表!$A$2:$B$7,2,0)
実際にC2セルの数式バーに入力すれば、商品Aの単価「80」が表示されます。あとは以下のように下の行にそのままコピペするだけで転記は完了です。
転記した数値は以下のように個数と掛け合わせて金額を導き出すなどさまざまな形で利用することができます。
次のページではVLOOKUP関数をさらに進化させたXLOOKUP関数についてご紹介します。
(宮田文机)
1 2
・XLOOKUP 関数┃Microsoft
・【Excel】XLOOKUP関数の使い方-関数と全ての引数の実例の紹介┃ACCOUNTECH!
・ExcelのVLOOKUP関数の使い方|指定の列と同じ行にある値を返す┃Office Hack
・森田貢士 「エクセル関数をゼロから極める本【VLOOKUP関数編】 Kindle版」2017、Kindle ・XLOOKUP 関数┃Office TANAKA
メルマガ登録をしていただくと、記事やイベントなどの最新情報をお届けいたします。
30秒で理解!インフォグラフィックや動画で解説!フォローして『1日1記事』インプットしよう!