かもメモ

自分の落ちた落とし穴に何度も落ちる人のメモ帳

GAS SpreadSheet IMPORTRANGE で 外部シートを読み込もうとして 循環依存が検出されました。なエラーにハマる

PM っぽいことをしてて SpreadSheet を触るばかりの日々を過ごしています。 お久しぶりに SpreadSheet で他のシートからの参照をしててエラーになってしまったのでメモ。

IMPORTRANGE で外部のシートを読み込もうとしたら 循環依存が検出されました。 というエラーになった

=IMPORTRANGE('SpreadSheet_KEY', シート!A:Z)

こんな風に書いたら 循環依存が検出されました。 なエラーになってしまった。

IMPORTRANGE の範囲指定は " で囲って文字列にする必要がある。

  • 範囲の文字列 - 読み込む範囲を指定する文字列で、"[シート名!]範囲" の形式で指定します(例: "シート1!A2:B6"、"A2:B6")。
    • 範囲の文字列のシート名の要素は省略可能です。デフォルトでは、IMPORTRANGE 関数は最初のシートの指定範囲から読み込みます。
    • 範囲の文字列の値は二重引用符で囲むか、適切なテキストを含むセルへの参照にする必要があります。

cf. IMPORTRANGE - ドキュメント エディタ ヘルプ

IMPORTRANGE を使っているシート名が シート と同じだったので、今見ているシートを範囲として取ろうとして 循環依存 のエラーになってしまっているっぽい。
範囲を " で囲って文字列にすればOK

=IMPORTRANGE('SpreadSheet_KEY', "シート!A:Z")

₍ ᐢ. ̫ .ᐢ ₎ok 触ってないとすぐ忘れますね。(コードが書きたい)

IMPORTRANGE なんだから、当然 key で指定してるシート無いから範囲参照するものだと思ってたら違ってた。仕様が謎〜
SpreadSheet 関連ググっても公式のドキュメントより他の使い方 blog ばかり検索上位になるのどうにかして欲しい。

関係ないけど、スプレッドシートスプシ みたいに社内でしか通じないような略し方が浸透してるのは悪い文化だと思ってるので辞めて〜


[参考]