【スプレッドシート】VLOOKUP関数の使い方まとめ|応用テクニックあり
本記事では、スプレッドシートのVLOOKUP関数の使い方を解説していきます。
基本的な使い方はもちろん、応用テクニックも解説しているのでぜひ最後までご覧ください。
スプレッドシートのVLOOKUP関数
スプレッドシートのVLOOKUP関数は、指定した任意の値に一致した行内にあるセルの値を返す関数で「垂直方向の検索」と呼ばれます。
垂直方向の検索。 範囲の 1 列目で指定したキーを垂直方向に検索し、同じ行内にある指定したセルの値を返します。
公式ドキュメント
VLOOKUP関数は、表形式のデータから指定した値を取得するのに非常に便利な関数ですが、できないこともいくつかあります。
VLOOKUP関数でできないことについてはこちらの記事で解説してますので、気になった方はチェックしてみてください。
VLOOKUP関数の使い方
VLOOKUP関数の基本的な使い方はこちらの通りです。
VLOOKUP(検索キー, 範囲, 番号, [並べ替え済み])
引数 | 説明 |
---|---|
検索キー | 検索する値、条件 |
範囲 | 検索する対象の範囲(範囲の1列目が検索キーを調べる列) |
番号 | 値を返す列の番号 |
並べ替え済み | [省略可]範囲の先頭列が並べ替え済みであるかどうか |
それでは実際にサンプルを使ってみていきましょう。
VLOOKUP関数を使った例
今回は、以下のようなデータを使って解説していきます。
B列に商品名を入力したらC列に単価を自動で表示
=VLOOKUP(B2,$G$2:$H$7,2,false)
この後C2セルに入力した関数をC11セルまでコピーするため、第2引数の検索範囲は「$」をつけて絶対参照にするようにしましょう。
部分一致で検索する方法
VLOOKUP関数は、部分一致と言われる「〇〇で始まる」「〇〇で終わる」「〇〇を含む」で検索することも可能です。
部分一致で検索するにはワイルドカードを使用します。
=VLOOKUP(“*”&B2&”*”,$G$2:$H$7,2,false)
上記は「ぶ」を含むデータを検索し「ぶどう」の単価を取得しています。
- 「〇〇含む」・・・
”*”&B2&”*”
- 「〇〇で始まる」・・・
”*”&B2
- 「〇〇で終わる」・・・
B2&”*”
一番近い値を取得する近似値検索の使い方
VLOOKUPの第4引数には「並べ替え済み」を指定できます。
基本的にはfalseを指定することが多いですが、trueの使い方も身につけておきましょう。
falseとtrueの違いは以下の通りです。
true | 参照元が昇順に並べ替え済みの場合に指定。trueを指定した場合は、検索キーに最も近い値(近似値)が返されます |
false | 検索キーに完全一致した値が返されます。複数ある場合は最初の行が返されます |
並べ替え済みをtrueにした例
実際にtrueを指定したときの例をみていきましょう。
点数に応じて結果を表示させる
=VLOOKUP(A2,$D$2:$E$6,2,true)
これで「◯点以上は△△」と点数に応じて判定を切り替えられるようになりました。
#N/Aが表示された時の対処法
VLOOKUP関数を使っていると、#N/Aというエラーに出くわすことが多々あります。
#N/Aエラーとは、値が見つからないときに表示されるエラーで、iferror関数と組み合わせることで非表示にすることが可能です。
=IFERROR(VLOOKUP(B2,$G$2:$H$7,2,false))
VLOOKUP関数を使った応用テクニック
次にVLOOKUP関数を使った応用テクニックをいくつかご紹介します。
知っていると重宝するテクニックばかりなので、ぜひ参考にしてみてください。
複数の条件で検索する
1つ目のテクニックは、検索する条件を複数指定する方法です。
条件に指定したい複数の列を結合した列を元データの左端に追加することで、擬似的に複数条件で指定することが可能です。
詳しいやり方はこちらの記事で解説しているのでぜひご覧ください。
左側を抽出する
2つ目のテクニックが、検索範囲の左側を抽出する方法です。
通常VLOOKUP関数は左側を抽出することができませんが、元データの列を擬似的に分割し再結合させることで左側にある値を取得できるようになります。
VLOOKUP関数を使って左側の値を取得する方法はこちらの記事で解説しています。
別シートのデータを取得する
3つ目のテクニックが別シートのデータを取得する方法です。
スプレッドシートで別のシートを参照する機会は多いので覚えておくと良いでしょう。
別シートを参照するにはIMPORTRANGE関数と組み合わせます。
具体的な方法はこちらの記事で解説していますので合わせてご覧ください。
取得した値によってセルの色を変える
ここからは少し特殊なケースです。VLOOKUP関数で取得した値によってセルの色を変更することもできます。
例えば「VLOOKUP関数で取得した値が30ならセルの色を赤色にする」というような感じです。
値によって色を変えることで大量のデータもみやすくなるため、ぜひ参考にしてみてください。
プルダウンに連動して結果を切り替える
スプレッドシートにはプルダウン形式で値を選択できる機能があります。
このプルダウンとVLOOKUP関数を連動させて結果を切り替えることも可能です。
まとめ
今回は、スプレッドシートのVLOOKUP関数の使い方についてご紹介しました。
指定した条件に一致した値を取得できるVLOOKUP関数は非常によく使う関数です。ぜひ使い方を身につけておきましょう。
また、条件に一致した値を取得できる似た関数にQUERY関数があります。
QUERY関数の方ができることの幅が広いので、気になる方はこちらもチェックしてみてください。