Quantcast
Viewing all articles
Browse latest Browse all 2095

【初心者向けGAS】スクリプト実行時の「承認」でびっくりしないために

みなさん、こんにちは!
タカハシ(@ntakahashi0505)です。

超初心者向けGoogle Apps Scriptを学ぶシリーズ、Botの作成を目指しております。

が、まだBotっぽいこと全然出てきていませんけどね。

前回の記事はこちらです。

Google Apps Scriptの超入門シリーズ、GASプログラミングの基礎を学んでいっております。今回はログを表示するLogger.logの使い方、%sによる書式を使った方法についてもお伝えします。

開発やデバックで大変お世話になる、Logger.logによるログ出力の方法についてお伝えしました。

さて、GASを使用するケースとしては、スプレッドシートを使いたいというニーズがあることが多いと思います。

ただ、GASでスプレッドシートを操作しようとすると、初回実行時に「承認が必要です」というダイアログが出てきてびっくりすると思います。

特に無料のGmailアカウントを使っている場合は…余計びっくりします。

今回は、それが出てきてもびっくりしないように、スプレッドシートでメッセージダイアログを表示する場合を例に、Google Apps Script実行時のアクセス許可の承認についてお伝えしていきます。

では、行ってみましょう。

メッセージダイアログを表示する方法

では、スプレッドシートにメッセージダイアログを表示する方法をお伝えしていきます。

Browser.msgBoxでメッセージを表示する

スプレッドシートのコンテナバインドスクリプトを使っているときのみ、Browser.msgBoxメソッドで、スプレッドシート上にメッセージダイアログを表示することができます。

Browser.msgBox(メッセージ)

なお、他の方法としてスプレッドシート・ドキュメント・フォーム・スライドのコンテナバインドスクリプトであれば、Uiクラスを使ってメッセージダイアログを表示する方法もありますので、ご興味あればチャレンジしてみてください。

メッセージダイアログを表示するスクリプト

で、今回は「メッセージダイアログ」というプロジェクト名にして、以下のスクリプトを作成しました。

function myFunction() {
  Browser.msgBox('Hello GAS!');
}

実行してみましょう。

さて、何か起きるでしょうか?

「承認」とは何か

メッセージダイアログにかかわらず、GASからGoogleのアプリケーションを操作しようとしたときには「承認」が必要になります。

GASのスクリプトも、スプレッドシートも、Googleのクラウド上にありますよね。

つまり、同じブラウザから操作していても、Googleから見たら、そのスクリプトが本当にそのスプレッドシートをいじってよいかどうかはわからないのです。

なので、初回実行時にスクリプト「メッセージダイアログ」が先ほど新規で作成した「新規のスプレッドシート」にアクセスして良いかを、「承認」する作業が必要になります。

基本は、ダイアログの手順に従えばいいのですが、無料のGmailアカウントを使っている場合はちょっと注意が必要です。

それについて、以降解説をしていきます。

G Suiteアカウントを使っている場合

「承認が必要です」ダイアログ

G Suiteアカウントを使っている場合であれば、まず以下の「承認が必要です」ダイアログが出現します。

Image may be NSFW.
Clik here to view.
GASの「承認が必要です」ダイアログ

アカウントの選択

「許可を確認」をクリックすると、以下「アカウントの選択」ウィンドウが開きますので、スプレッドシートの持ち主(オーナーといいます)であるアカウントを選択します。

Image may be NSFW.
Clik here to view.
GAS実行時のアカウントを選択ウィンドウ

リクエストの許可

続いて「ようこそ」というウィンドウが表示されます。

スクリプト「メッセージダイアログ」がスプレッドシートへのアクセスをリクエストしていますよ、許可していいですか?という意味ですね。

「許可」をすれば、無事に承認されたことになります。

Image may be NSFW.
Clik here to view.
GAS実行時「ようこそ」ウィンドウでリクエストを許可する

メッセージダイアログの表示

これでようやく、スクリプトが実行されます。

スプレッドシートのタブを開くと、以下のようにメッセージダイアログが開かれているはずです。

Image may be NSFW.
Clik here to view.
GASでメッセージダイアログを表示する

無料のGmailアカウントを使っている場合

無料のGmailアカウントを使っている、つまり「~@gmail.com」のアカウントを使っている場合、この「承認」のフローが少し異なり、より「びっくり」させられます。

このアプリは確認されていません

G Suiteの場合の「アカウントの選択」までは同じフローですが、その後に、以下のようなウィンドウが表示されます。

Image may be NSFW.
Clik here to view.
GAS実行時に「このアプリは確認されていません」

「このアプリは確認されていません」

このアプリは Google による確認が済んでいません。よく知っている信頼できるデベロッパーの場合に限り続行してください。

…だぞうです。

うっかり「安全なページに戻る」をクリックしたくなりますが、ダメです。それだと先に勧めません。

ちっちゃいですが「詳細」をクリックが正解です。

安全ではないページに移動する

すると、ウィンドウの下の隠れていた部分が表示されるようになります。

また、クリックしづらいですが「メッセージダイアログ(安全ではないページ)に移動」をクリックしてください。

Image may be NSFW.
Clik here to view.
GAS実行時に「このアプリは確認されていません」で詳細を表示

これでようやく「ようこそ」ウィンドウが表示されますので、「許可」をすることで承認の作業が完了します。

無料のアカウント、ちょっと嫌がらせ受けてますかね。

まとめ

以上、Google Apps Scriptでスクリプト実行時の「承認」びっくりしないためのアレコレについてお伝えしました。

クラウドで提供されているGASならではの手順と言えますね、面倒ですが安全にGASを利用するために必要なものと理解ください。

また、無料のGmailアカウントを使っている場合は、より面倒でびっくりさせられますが、大丈夫です。使えますので。

ただ、G Suiteのほうが他にもあちこちで色々と優遇されていますので、企業などで利用される場合はG Suiteの利用を検討されるとよいと思います。

次回は、いよいよスプレッドシートを操作していきたいと思います。

どうぞお楽しみに!

連載目次:超初心者向けGASでBotを作りながら基礎を学ぶ

Google Apps Script(GAS)をはじめるためのメリットは山程ありますが、何を作ったらいいの?と悩んでしまうこともありますよね。そんな時に、おすすめしたいのが「Bot」の作成です。このシリーズでは、超初心者向けにGASでBotを作る方法を題材としながら、GASプログラミングの一通りの流れと書き方について学んでいきます。
  1. 【初心者向けGAS】本当の最初の一歩!スクリプトエディタでプロジェクトを開く
  2. 【初心者向けGAS】はじめてのスクリプトを作成し、保存し、実行する
  3. 【初心者向けGAS】プログラミングに必須の変数の使い方とデータ型について
  4. 【初心者向けGAS】ログを表示するLogger.logの使い方
  5. 【初心者向けGAS】スクリプト実行時の「承認」でびっくりしないために

Viewing all articles
Browse latest Browse all 2095

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>