Excelの人気関数をGoogleスプレッドシートでも

VLOOKUP(ブイ・ルックアップ)は、表を縦方向に検索し、特定のデータに対応する値を取り出す関数です。例えば、以下の表のように、商品IDに対応する商品名や単価を自動的に取り出すことが可能です。

GoogleスプレッドシートのVLOOKUP関数の使い方。表を縦方向に検索して対応する値を取り出す

GoogleスプレッドシートのセルB3とC3にVLOOKUP関数が入力されており、商品ID「S1-001C」に対応する商品名と単価を取り出しています。

何らかのコードを検索値(キー)として対応する値を取得する処理は、さまざまな業種で必要になります。元の表を目視で確認して手入力していては効率も悪く、ミスの原因にもなりますよね。

今回は、ビジネスに必須といわれるVLOOKUP関数を、Googleスプレッドシートで利用する方法を紹介します。

VLOOKUP関数の構文

GoogleスプレッドシートのVLOOKUP関数には4つの引数(ひきすう)があり、それぞれ以下のような意味があります。


=VLOOKUP検索キー, 範囲, 指数, 並べ替え済み


  1. 検索キー]......どのデータで
  2. 範囲]......どこを検索して
  3. 指数]......どの列にある値を取り出すか
  4. 並べ替え済み]......元の表が並べ替え済みかどうか

入力例を見ながら引数を確認しましょう。[検索キー]と[範囲]は、すぐに理解できると思います。[検索キー]はセルB3の値「S1-001A」、[範囲]は、商品マスタのセル範囲(H3~J11)です。表の見出しは含めなくて構いません。

GoogleスプレッドシートのVLOOKUP関数の使い方。表を縦方向に検索して対応する値を取り出す

検索キー]はセルB3の値「S1-001A」、[範囲]は、商品マスタのセル範囲(H3~J11)です。2列目の「商品名」を取り出したいので[指数]は「2」です。[並べ替え済み]はFALSEとします。

3つ目の引数[指数]は、参照する表のうち、何列目の値を取得したいかを指定する数値です。列数は[範囲]の左端から「1」「2」「3」......と数えます。「商品名」は2列目なので「2」、「単価」は3列目なので「3」となります。

4つ目の引数[並べ替え済み]はFALSEと覚えておいてください。「TRUE」では[検索キー]に最も近い値を検索することになるため、「商品ID」のような固有値を完全一致で検索する場合には適しません。省略した場合は「TRUE」と扱われるので、完全一致で検索する場合は必ず「FALSE」と入力します。

また、VLOOKUP関数の注意点として、[検索キー]の検索対象は[範囲]の左端の列(左から1列目)にしておくことを覚えておきましょう。左から2列目や3列目は検索できません。

例えば、[検索キー]として「商品名」を指定する場合は、[範囲]の左端の列が「商品名」となるように、あらかじめ表を整えておく必要があります。

VLOOKUP関数を入力する

引数の意味を理解したところで、実際にGoogleスプレッドシートでVLOOKUP関数を入力してみましょう。ここではセルB3にVLOOKUP関数を入力して、商品名を取得します。

検索キー]はセルA3、[範囲]はセルE3~G13です。[範囲]のセル参照は、オートフィルで参照がずれないように絶対参照に切り替えておきます。[指数]は2列目の「2」、[並べ替え済み]はFALSEです。

なお、表の形式によりますが、Googleスプレッドシートでは、ほかのセルに同等の数式を自動的に入力できる候補が表示されることがあります。コピーするよりも簡単に数式を入力できるのでおすすめです。チェックマークをクリックするか、[Ctrl]+[Enter]キーで候補の数式を入力できます。

11つ目の引数[検索キー]を指定する

GoogleスプレッドシートのVLOOKUP関数の使い方。表を縦方向に検索して対応する値を取り出す

VLOOKUP関数の結果を表示したいセル(ここではセルB3)に「=VLOOKUP(」と入力し、[検索キー]なるセル(ここではB3)をクリックします。直接入力しても構いません。

22つ目の引数[範囲]を指定する

GoogleスプレッドシートのVLOOKUP関数の使い方。表を縦方向に検索して対応する値を取り出す

「,」を入力して[範囲]となるセル(ここではセルH3~J11)をドラッグして選択します。選択範囲を間違えたときはドラッグし直します。

3引数[指数]を絶対参照に切り替える

GoogleスプレッドシートのVLOOKUP関数の使い方。表を縦方向に検索して対応する値を取り出す

範囲]のセル範囲をドラッグしたら、そのまま[F4]キーを押します。「H3:J11」が「$H$3:$J$11」に切り替わります。

43つ目の引数[指数]を指定する

GoogleスプレッドシートのVLOOKUP関数の使い方。表を縦方向に検索して対応する値を取り出す

「,」を入力して[指数]を指定します。ここでは[範囲]のセル範囲の2列目にある「商品名」を取得したいので「2」と入力します。

54つ目の引数[並べ替え済み]を指定する

GoogleスプレッドシートのVLOOKUP関数の使い方。表を縦方向に検索して対応する値を取り出す

「,」を入力して[並べ替え済み]に「FALSE」と指定します。続けて「)」を入力し、[Enter]キーを押して数式を確定します。

6自動入力の候補を確定する

GoogleスプレッドシートのVLOOKUP関数の使い方。表を縦方向に検索して対応する値を取り出す

セルC3の数式が確定し、商品ID「S1-001A」に対応する商品名「商品001A」が表示されました。同時に、セルC4以降の自動入力の候補が表示されています。ここではこのまま候補を確定するので、チェックマークをクリックします。

7商品名を取得できた

GoogleスプレッドシートのVLOOKUP関数の使い方。表を縦方向に検索して対応する値を取り出す

セルC4以降の商品名もまとめて取得できました。セルC4の数式には「=VLOOKUP(B4,$H$3:$J$11,2,FALSE)」と入力されています。1つ目の引数[検索キー]の参照だけずれて、正しい数式が入力されていることが分かります。

単価も同様の手順で取得可能です。ここで入力した数式は以下の通りです。商品名を取得したセルC3の数式と異なるのは、3つ目の引数[指数]のみ。セルC3の数式をコピーして「2」→「3」と修正してもいいでしょう。

    =VLOOKUP(B3,$H$3:$J$11,2,FALSE)
    =VLOOKUP(B3,$H$3:$J$11,3,FALSE)
  

GoogleスプレッドシートのVLOOKUP関数の使い方。表を縦方向に検索して対応する値を取り出す

単価の取得も商品名と同様です。セルC3の数式をコピーして、3つ目の引数[指数]の「2」を「3」と修正してもいいでしょう。

HINT自動入力の候補から数式も調べられる

表の形式によって表示されないこともありますが、Googleスプレッドシートの自動入力候補の機能はかなり便利です。以下のように[数式を表示]をクリックすることで、自動入力される数式を確認することも可能です。

GoogleスプレッドシートのVLOOKUP関数の使い方。表を縦方向に検索して対応する値を取り出す

数式を表示]をクリックします。

GoogleスプレッドシートのVLOOKUP関数の使い方。表を縦方向に検索して対応する値を取り出す

自動的に入力される数式を確認できます。