共有されたスプレッドシートからGASスクリプトエディタが開けない場合の対処方法
他のユーザーから権限付与されたスプレッドシートに紐づいたGoogle Apps Script(GAS)のスクリプトエディタを、メニューから開こうとしてエラー画面が表示されることがあります。
そうしたコンテナバインドのGASスクリプトを開くことができない場合の解決法を紹介します。
スプレッドシートは共有が簡単
Googleが提供するスプレッドシートは他のユーザーとのファイル共有が簡単です。
スプレッドシートをブラウザで開いた際、右上にある権限からユーザーを共有したいユーザーを追加することで、すぐに共有することができます。
※下記の記事でスプレッドシートの共有方法を解説しています。
スプレの権限付与は紐付いたGASも有効
スプレッドシートを共有すると、そのスプレッドシートファイルに紐づいているGoogle Apps Script(GAS)のプロジェクトも自動的に共有されます。
コンテナバインドスクリプトと呼ばれるGASスクリプトは、紐付いているスプレッドシートの共有設定がそのまま継承されます。
スプレッドシートのメニューにある「拡張機能>Apps Script」からGASプロジェクトに遷移できます。
そのため、スプレッドシートに共有したいユーザーを追加すれば、GASプロジェクトのスクリプトファイルも共有可能です。
スプレッドシートからGASプロジェクトが開けない
しかし、他のユーザーから共有されたスプレッドシートで、コンテナバインドのGoogle Apps Script(GAS)を開こうとするとエラーが表示されることがあります。
先程の紹介した「拡張機能>Apps Script」を選択すると、「現在、ファイルを開くことができません。」とGASスクリプトを開けない状態に陥るケースです。
スプレッドシートで稼働するGASで開発したツールを、組織内のメンバーに多く共有している場合にGASが開けない事象が発生しやすくなります。
「共有してもらったスプレッドシートからGASスクリプトが表示されない」と共有相手からアピールを受けます。
Chromeのログインアカウントが原因
スプレッドシートからGASスクリプトエディタが開けない原因は、共有したユーザーのブラウザ環境です。
共有したスプレッドシートをChromeブラウザで開いた場合、ページの右上にユーザーアイコンが表示され、選択すると、ユーザーIDが確認できます。
※スプレッドシートのユーザーはmから始まるgmailアカウントになっています。
それに対し、先程のGASスクリプトエディタが開けなかったエラー画面のユーザー情報を確認すると、異なるユーザーになっています。
※Chromeログインユーザーはnから始まるgmailアカウントです。
スプレッドシートの権限付与されたユーザーと、Chromeブラウザにログインしているユーザーが異なっていました。
スプレッドシートのメニューからGASスクリプトエディタを開く際、Chromeブラウザにログインしているユーザーとしてアクセスします。
そのため、スプレッドシートで共有されたユーザーではない、権限が付与されていないユーザーでGASプロジェクトにアクセスしたため、スクリプトエディタが表示されない事象が発生します。
解決策はChromeとスプレッドシートのユーザーを統一
このように共有したスプレッドシートに紐づくコンテナバインドのGASスクリプトが開けない場合の対処方法は、「Chromeブラウザとスプレッドシートのユーザーを揃えること」です。
上記のようにChromeブラウザにログインしているユーザーと、スプレッドシートでログインしているユーザーが同一であれば、権限周りでエラーが起きる可能性は極めて低くなります。
さきほどと同じようにスプレッドシートの「拡張機能>Apps Script」を選択すると、GASスクリプトエディタが正常に表示することができます。
まとめ・終わりに
今回、共有されたスプレッドシートに紐づいたGoogle Apps Script(GAS)のプロジェクトがメニューから開くことができない場合の原因を紹介しました。
上手くコンテナバインドのスクリプトが開けない原因は、ChromeブラウザにログインしているGoogleアカウントと、スプレッドシートにログインしているGoogleアカウントが異なるためです。
スプレッドシートのメニューにある拡張機能から「Apps Script」を選択して、GASプロジェクトを開くとき、Chromeブラウザのアカウントでアクセスします。
Chromeブラウザのユーザーには共有権限が付与されていないため、GASプロジェクト画面が表示エラーになります。
そのため、Chromeブラウザのログインアカウントと各Googleサービスのログインアカウントは揃えておくのがオススメです。
共有されたスプレッドシートに紐づいたGASコンテナバインドスクリプトが表示できない場合は、アカウント周りを確認しましょう。
ディスカッション
コメント一覧
まだ、コメントがありません