スプレッドシートのVLOOKUP関数で左側を抽出する方法
本記事では、スプレッドシートのVLOOKUP関数で検索列より左側を抽出する方法を解説していきます。
基本的に左側を抽出することはできませんが、一工夫することで可能になります。ぜひ参考にしてみてください。
VLOOKUP関数で検索列より左側を抽出する方法
それでは、実際にVLOOKUP関数を使って左側を抽出してみましょう。
今回は以下の画像を用いて解説していきます。
単価が¥500の商品名を取得したい
この場合、検索キーを探す範囲は一番右列のC列になります。
第2引数で指定する範囲を分割して結合する
以下のように指定します。
=VLOOKUP(500,{C3:C7,A3:B7},3,false)
ポイントは{C3:C7,A3:B7}
の部分です。
これは、検索キーの列(C3:C7
)とそれ以外の列(A3,B7
)を一度分割し、{}
(波かっこ)で結合しています。
つまり、強制的に検索キーの列を1列目に移動しているという訳です。そのため、第3引数で指定する番号もその分ずれるのでご注意ください。
上記はC3:C7
とA3:B7
の2つに分割しましたが、以下のように1列ずつ分割することも可能です。
=VLOOKUP(500,{C3:C7,A3:A7,B3:B7},3,false)
INDEX+MATCH関数で左側を抽出できる
INDEX関数とMATCH関数を組み合わせることで左側の値を取得することもできます。
VLOOKUP関数で取得した値を、INDEX+MATCH関数で取得してみましょう。
=INDEX(A3:C7,MATCH(500,C3:C7,0),MATCH(“商品名”,A2:C2,0))
INDEX関数とMATCH関数を組み合わせて使う方法を覚えておくと、いろいろな場面で重宝します。
まとめ
今回は、VLOOKUP関数で左側を取得する方法をご紹介しました。
列を分割して結合し直すやり方は、別の人が見たら少しわかりづらいので、できればINDEX+MATCH関数で取得する方が好ましいです。