見出し画像

スプレッドシートでVlookup関数(左というか逆というか)

Vlookup関数を用いる際、検索キーの列より左の列を検索対象範囲としたい、というケースはよくあります。
ExcelだったらINDEX関数とMATCH関数を組み合わせる方法が代表的かと思います。

先日、Googleスプレッドシートのデータに於いてそのケースが生じた際に調べてみると、検索対象範囲の指定方法を変えることでVlookup関数を用いることができると知りました。
備忘録メモとして記します。

以下のデータがあったとして、

画像2

セルG3に列E「案件No.」を入力することにより、セルH3に列A「案件名」を返す、ということを実現したい場合、
Vlookup関数で以下のように記述します。

◇セルH3に列A「案件名」を返す

=VLOOKUP(G3,{E:E,A:D},2,0)

第二引数に波カッコ{}を用いることにより、列の順番を入れ替えることができるそうです。
上記の数式では検索キーにしたい列Eを先頭列とし、そのあとに列A-Dを定義しています。


別のケースもみてみます。

画像2

上記のケースでは、検索キーにしたい列がCの位置にあります。

◇セルH3に列A「案件名」を返す

=VLOOKUP(G3,{C:C,A:E},2,0)

第二引数で列Cを先頭列とし、そのあとに列A-Eを定義しています。

またこの場合、列D「都道府県」を返す際には第三引数に注意が必要です。
第二引数で「 {C:C,A:E} 」としており、列Cがもう一度並んでいるため、
第三引数は「4」ではなく「5」にする必要があります。

◇セルJ3に列D「都道府県名」を返す

=VLOOKUP(G3,{C:C,A:E},5,0)

INDEX関数&MATCH関数​を用いずに実装できることが出来、非常に便利です。

※「スプレッドシートでVlookup関数」関連でこんな記事も書いています。


この記事が気に入ったらサポートをしてみませんか?