EXCELの基本となるVLOOKUPをマスターして、仕事の業務効率化をしましょう
VLOOKUP(ブイルックアップ)は指定した値を参照し、すぐ隣にあるデータを引っ張ってくる関数です。この関数を使いこなせば1つの値を入れればデータを複数個飛ばすことができるのでデーター入力の効率化ができます。
用途
・情報整理
・売上票の作成
・データーベースからの参照
関数
=VLOOKUP
(①検索値, ②範囲, ③列番号, ④検索方法)
関数の説明
①検索値 入力したデーターの参照元になる値を入れます。
②範囲 データーベースの表の範囲を指定します。
③列番号 データーベースの左から数えた番号を入れます。
④検索方法 FALSEまたはTRUEのどちらかを入れます。
サンプルとしまして、商品情報を入れれば自動で売上金額を自動で計算される表を用意しました。
こちらをクリックしてダウンロード
サンプルでの表の見方
データーベース部分
左側にある部分がデーターベースの部分になります。
VLOOKUP関数が入っている箇所は右側のデーター入力箇所の黄色に塗ったところになります。
茶色の情報入力欄の部分に各項目を入れると自動で黄色の値(商品名と単価)が表示され、緑色の金額が自動で計算されるという仕組みになっています。
黄色の表のL5にはこのようにVLOOKUP関数を入れています。
=VLOOKUP(K5,$D$4:$F$9,2,FALSE)
これを分解すると・・・
①検索値 →K5
セル番号K5に入っている商品コード1と、範囲で合致した値を検索する。
②範囲 →$D$4:$F$9
データーベースの表D4からF9までの範囲までを参照する。
③列番号 →2
データーベースの2列目の値(商品名)を出すこと。
④検索方法→FALSE
一致しないものはエラーを表示する。
としています。
隣のM5には・・・
=VLOOKUP(K5,$D$4:$F$9,3,FALSE)
が入っています。
①検索値 →K5
セル番号K5に入っている商品コード1と、範囲で合致した値を検索する。
②範囲 →$D$4:$F$9
データーベースの表D4からF9までの範囲までを参照する。
③列番号 →3
データーベースの3列目の値(単価)を出すこと。
④検索方法→FALSE
一致しないものはエラーを表示する。
関数の引用の画面だとこのような形になります。
L5とM5の関数が出来上がれば、オートフィルで下に式をコピーすれば検索値が自然と移動するので簡単にできあがります。
・データーベース作成の注意点
①検索値の値を左側のセルに持ってくること
データーベースを作成するには次の注意点が必要です。VLOOKUP関数では①検索値から右側にある値しかもっていきません。そのため、①検索値になるようなコード類は必ず左側に持っていき、必ず②範囲指定で最左にするようにしてください。検索値はデーターベースと入力項目で一致していれば記号でも文字列でも結果が返ってきます。結果が返ってくるといっても検索値にするのはできるだけシンプルな数字や英語を使ったコードにすると良いです。
②データーベースの検索値部分は同一の値を存在させないこと
データーベース内に同一のコードが存在すると、VLOOKUP関数の性質から上位にあるコードを優先して値を返すようになっています。重複させないようにしてください。
このようにデーターベース部分にコード2と書いたバナナとレモンがあったときに、データーべースから返ってくる値はデーターベース上部にあるコードのバナナを優先して値が返ってきます。レモンには他のコードとは重複しないコードを与えれば正しい結果が返ってくるようになります。
・VLOOKUP関数でよくあるエラー
TRUEとFALSEの使い分け
FALSEを使う場合
完全にデーターベースと一致するコードを参照したい場合はFALSEを使ってください。
TRUEを使う場合
検索値に近いコードで結果を求めている場合はTRUEを選択してください。(TRUEを使う用途があまり思いつかないです。)
試しにサンプルのL5の関数にて④検索方法部分をFALSEからTRUEに修正し、K5を2.4にすると2に近いバナナが表示されます。FALSEだとエラー表示になります。この幅は2.0~2.9の値であればすべてバナナが表示されます。こういった不確定な幅で検索結果を求める場合はTRUEを使うと良いです。
・②範囲指定がずれる
同じデーターベースを参照して関数を作る場合は、②範囲の指定は他のセルにコピーしたときでも、範囲がズレないように②範囲に入れたセルの部分を&で囲うと便利です。
・③列番号の指定
列番号を指定を誤るとVLOOKUPの値の結果が誤った値が出てきてしまいます。サンプルのようにデーターベースの上に列番号を表記しておくと便利です。データーベースが20列になるとゴチャゴチャになってしまいますからね。
VLOOKUP関数と他の関数を組み合わせて使う
#N/Aの表示を無くす
①検索値にある値の箇所に数値が入ってないとこのようにエラー表記になってしまいます。表の作りとしては問題ありませんが、見栄えが悪いです。
これを回避するために、VLOOKUP関数と組わせでIFERROR関数を組み合わせると①検索値が空白であっても#N/Aが表示されなくなります。
サンプルデータのL5を
=IFERROR(VLOOKUP(K5,$D$4:$F$9,2,FALSE),” “)
にすると#N/Aの表示が消えます。
これはエラー表示だった場合にどのような表記をするかという関数を組み合わせた結果でエラー表示を消しています。
エラー部分を空白としていますが、上記の組み合わせ関数で赤く塗った箇所を
=IFERROR(VLOOKUP(K5,$D$4:$F$9,2,FALSE),”記入なし”)
とすると、無記入の①検索値に対しては記入なしと自動で表示されます。
コメント