無料でExcel並み!Google スプレッドシートの使い方

VLOOKUP関数で別のスプレッドシートからデータを取り込める!IMPORTRANGE関数を使ったテクニック

別のシートのほか、別のスプレッドシートも参照可能

 前回は“製品コード”をもとに“製品名”と“単価”を取り出す例で、VLOOKUP関数の基本を紹介しました。

VLOOKUP関数を使って、“製品コード”をもとに“製品名”と“単価”を取り出した例

 しかし、実務において検索する値(キー)を含む表と検索する表が同一のシートにあることはあまりないでしょう。この例でいえば、製品管理表は別のシートやスプレッドシートに保存されているはずです。

 では、そのような場合にVLOOKUP関数をどのように修正するのか? 今回は別のシートと別のスプレッドシートを参照する方法を紹介します。

別のシートを参照する

 まずは同一のスプレッドシート内にある別のシートを参照する方法。別のシートを参照するときは、セル参照の前にシート名として、「'(シート名)'!」と追加します。「'」「!」は半角です。ただ、直接入力しなくても、関数式を途中まで入力し、シートを切り替えてセル範囲を選択した方が間違えにくいと思います。セル範囲を絶対参照に切り替えるためのショートカットキー[F4]もあわせて覚えておくと便利です。

C3に「=VLOOKUP(B3,」と入力し、そのまま[製品管理表]シートをクリックする
[製品管理表]シートに切り替わった。A3~C3をドラッグして選択する。[F4]キーを押してセル範囲を絶対参照に切り替えておく
そのまま続けて、「2, FALSE」と入力して[Enter]キーを押す。「2」は、2列目を取り出すという意味
別のシートの値を参照できた

別のスプレッドシートを参照する

 別のスプレッドシートを参照するには、VLOOKUP関数にIMPORTRANGE関数を組み込みます。IMPORTRANGE関数は、別のスプレッドシートを取り込むための関数です。構文は『=IMPORTRANGE(スプレッドシートのURL, 範囲の文字列)』となります。

 [スプレッドシートのURL]は、参照したいスプレッドシートのURLです。アドレスバーからコピーすればOKです。[範囲の文字列]はセル範囲のこと。「(シート名)!(セル範囲)」の形式で指定します。[スプレッドシートのURL]と[範囲の文字列]は半角の「"」でくくります。

 ここでは「製品管理表」という別のスプレッドシートを参照してみます。

引数としてURLを利用するため、アドレスバーを全選択してコピーしておく
VLOOKUP関数の引数[範囲]の部分を削除し、「IMPORTRANGE(」と入力する
続けて、「"(スプレッドシートのURL)", "(シート名)!(セル範囲)")」と入力する。[スプレッドシートのURL]には、先ほどコピーしたURLを貼り付ける。ここではセル範囲として「A:C」(A列からC列すべて)と指定した。それぞれの引数を「"」でくくることを忘れずに
製品名を取り出せた