Googleスプレッドシートで便利な関数の「IMPORTRANGE」。別のファイルやシートから指定範囲のデータをそのまま持ってこれます。そのためデータのメンテナンスを一本化しつつ、あらゆるファイルやシートで参照可能になります。
ただし、いつまで経っても「データを読み込んでいます…」という表示が切り替わらない場合だったり、
「結果が大きすぎます」という表示が出てしまう場合があります。
上限は明言されてませんが、感覚的には5000行・50万セルをIMPORTRANGEで読み込むくらいが上限になってくるイメージで、正常に動作しなくなります。これに近い行数やセル数を読み込む場合は危ないと思っておいたほうが良いでしょう。
対応方法としては、以下の2つです。
- 読み込む行・列数を削減する
- IMPORTRANGEを2つ以上に分割する
1.読み込む行・列数を削減する
IMPORTRANGEで読み込んでいるシート内にある不要な「行」や「列」の削除をすることで読み込む対象を削減します。以下のようなシートの下部に使っていない行が大量にある場合などが例です。使わない行が大量にあるので、IMPORTRANGEで列指定で引っ張ってきている場合は、使わない行を大量に読み込もうとすることになってしまいます。こういうのはなるべく削除しましょう。これだけで解決することもあります。
2.IMPORTRANGEを2つ以上に分割する
もう1つの方法が、IMPORTRANGEは1つの関数としての上限なので、2つ以上に分けてしまうということです。そうすると上限にも当たりにくくなりますよね。以下は1つ対象シートのA列~AG列まで読み込んでいたものを、①A列~Z列と②AA列~AG列の2つに分けた例です。実際に読み込まれるようになっています。
この場合の関数の書き方は、
={
IMPORTRANGE("https://docs.google.com/spreadsheets/d/***********/","シート名!A:Z"),
IMPORTRANGE("https://docs.google.com/spreadsheets/d/***********/","シート名!AA:AG")
}
というような感じになります。連結はカンマ「,」になります。カンマで列として横に連結できます。これを使いこなせるようになるとデータアナリスト・Googleスプレッドシートマスターに一歩近づきます。是非試してみてくださいね。
株式会社 GLASS代表。広告からSEOなどあらゆるデジタルマーケティングに精通するデータアナリスト。徹底的に現場に根付いた、スピーディーでシンプルなデータ分析環境の構築と施策推進を得意とする。
<経歴>
株式会社マイネットでモバイルCRMサービス(後にYahoo! JAPANに売却)のマーケティング部長、モバイルアプリ事業を立ち上げ。Googleで広告代理店営業マネージャーとして国内50社以上の広告代理店のコンサルティング。通信テクノロジー業界シニアアカウントマネージャーとして大手企業向けのマーケティング支援に関わる。