別のシートの表を読み込める

ExcelやGoogleスプレッドシートのような表計算アプリでは、セル範囲の参照は基本的な操作です。

実際、Excelでは「=」と入力した後、同じファイル内の別シートを開き、参照したいセル範囲を指定すれば、簡単にそのセル範囲を参照できます。また、別のファイルであっても、「=」と入力した後にそのファイルに切り替えてセル範囲を指定すれば、難なく参照することが可能になっています。

しかし、Googleスプレッドシートの場合、同じスプレッドシート(ファイル)内の別シートはExcelと同じですが、別のスプレッドシートとなると、同じ方法では参照できません。仕方なく、同じ表をコピー&ペーストしていた人もいるのではないでしょうか?

そこで利用したいのが、Googleスプレッドシートで別のシートからセル範囲を読み込むための専用の関数「IMPORTRANGE」(インポート・レンジ)です。

Googleスプレッドシートで別のシートのセル範囲を参照できる! IMPORTRANGE関数の使い方

IMPORTRANGE関数を利用すれば、別のスプレッドシート(ファイル)のセル範囲を参照し、元のシートで読み込めます。

本記事では、GoogleスプレッドシートのIMPORTRANGE関数の使い方を解説します。

IMPORTRANGE関数の構文

IMPORTRANGE関数は名前の通り、範囲(レンジ)を読み込む(インポート)する役割があります。構文と引数は以下の通りです。


=IMPORTRANGEスプレッドシートのURL, 範囲の文字列


  1. スプレッドシートのURL]......参照したいスプレッドシートのURLを指定します。
  2. 範囲の文字列]......参照したいセル範囲を指定します。

スプレッドシートのURL]は、照したいスプレッドシートのURLを半角の「"」(ダブルクォーテーション)でくくって指定します。例えば、URLが以下の1行目だった場合、2行目のように指定します。

  https://docs.google.com/spreadsheets/d/abcd123abcd123
  "https://docs.google.com/spreadsheets/d/abcd123abcd123"
  

範囲の文字列]は、参照したいセル範囲になります。シート名とセル範囲を組み合わせて、半角の「"」でくくって指定します。例えば、シート1のセルA1~C10を参照するなら以下のように指定します。「!」は半角で入力してください。

  "シート1!A2:C11"
  

なお、シート名を省略した場合は、[スプレッドシートのURL]で参照するスプレッドシートの最初(いちばん左)にあるシートを指定したことになります。

IMPORTRANGE関数で別のシートを参照する

それでは、IMPORTRANGE関数を使ってみましょう。参照先となるスプレッドシートを開いて、URLをコピーしておきます。また、参照するセル範囲とシート名も確認しておきましょう。

ここでは「マスタテーブル」というスプレッドシート内にある、[商品マスタ]シートのセルA2~C11をIMPORTRANGE関数で読み込みます。

1参照先のスプレッドシートのURLをコピーする

Googleスプレッドシートで別のシートのセル範囲を参照できる! IMPORTRANGE関数の使い方

参照先となる「マスタテーブル」スプレッドシートを開きました。スプレッドシートのURLを選択し、[Ctrl]+[C]キーを押してコピーします。

2参照元のシートにIMPORTRANGE関数を入力する

Googleスプレッドシートで別のシートのセル範囲を参照できる! IMPORTRANGE関数の使い方

参照元のスプレッドシートに切り替えておきます。「=IMPORTRANGE("」と入力し、コピーしたURLを貼り付けて「"」と入力します。

Googleスプレッドシートで別のシートのセル範囲を参照できる! IMPORTRANGE関数の使い方

続けて「,」を入力して「"商品マスタ!A2:C11")」と入力します。

3スプレッドシートへのアクセスを許可する

Googleスプレッドシートで別のシートのセル範囲を参照できる! IMPORTRANGE関数の使い方

スプレッドシートをはじめて参照したときは、アクセス許可を求められます。[アクセスを許可]をクリックします。

4別のスプレッドシートのセル範囲が読み込まれる

Googleスプレッドシートで別のシートのセル範囲を参照できる! IMPORTRANGE関数の使い方

「Loading...」と表示されて読み込みが開始されます。参照する表のサイズによってしばらく時間がかかることがあります。

Googleスプレッドシートで別のシートのセル範囲を参照できる! IMPORTRANGE関数の使い方

別のスプレッドシートのセル範囲が読み込まれました。

IMPORTRANGE関数は、あくまでセル範囲を「参照する」ための関数なので、参照元のシートに読み込まれたセル範囲を編集することはできません。しかし、参照先のセル範囲の内容を変更した場合は、自動的に参照元にも結果が反映されます。

同じ表をコピー&ペーストしていてはデータの更新漏れの心配がありますが、IMPORTRANGE関数を使いこなせば、その心配は不要です。ぜひ普段の業務で活用してください。

HINTスプレッドシートのURLは短くできる

引数[スプレッドシートのURL]は、短く指定することも可能です。スプレッドシートのURLは

  https://docs.google.com/spreadsheets/d/●●●●●●/edit#gid=0
  

の形式になっているので、「●●●●●●」の箇所のみを[スプレッドシートのURL]に指定しても、同じスプレッドシートを参照できます。