GASとは??
GAS(Google Apps Script)はGoogleが提供するJavaScriptベースのスクリプト言語のこと
Google Workspace(旧G Suite)のアプリケーション(Google Sheets, Google Docs, Google Driveなど)を自動化するために使用される
Googleのクラウド環境で動作するため、サーバーの管理が不要で、ユーザーが簡単にスクリプトを記述して、さまざまなタスクを自動化することができる
GASでできること
googleサービスを利用した自動化
例:
・Googleフォームの回答をスプレッドシートに自動保存
・Googleスプレッドシートの内容をもとにGmailの自動送信
外部サービスとの連携
例:
・スプレッドシートの更新をSlackに通知
・Googleフォームの問い合わせ内容をChatGPTに渡して、自動返信を作成
・Googleカレンダーの予定を定期的にLINEでリマインド
GASの開発方式
コンテナバインド型
コンテナバインド型は、スプレッドシートやドキュメント、スライド、フォームなどのGoogleのサービスに紐づく開発を行うときに使用
メリット
・Googleアプリと簡単に連携できる
→ SpreadsheetApp などの専用オブジェクトがすぐに使える
・スクリプトをファイルと一緒に共有できる
→ スプレッドシートを共有すれば、スクリプトも一緒に共有される
デメリット
・スクリプト単体では管理しづらい
→ スクリプトがスプレッドシートやドキュメントに埋め込まれているため、独立して管理できない
・別のGoogleアプリ(例:スプレッドシートA → B)へのアクセスが難しい
→ 例えば、スプレッドシートAのスクリプトからスプレッドシートBを操作するには、手間がかかる
・GASプロジェクトの一覧に表示されない
→ https://script.google.com/home からは見えず、紐づいたGoogleアプリからしかアクセスできない
スタンドアロン型
スタンドアロン型は、スプレッドシートやドキュメント、スライド、フォームのファイルに紐づいていない開発を行うときに使用
メリット
・スクリプト単体で管理しやすい
→ Googleドライブ上で独立したファイルとして管理できる
・複数のGoogleサービスを統合できる
→ 例:スプレッドシートとGmailを連携させて、自動メール送信
デメリット
・Googleアプリとの連携には明示的な権限設定が必要
→ SpreadsheetApp.openById() を使わないとスプレッドシートを操作できない
・スプレッドシートと一緒に共有できない
→ スクリプトを個別に共有する必要がある
参考
https://workspace.google.com/intl/ja/products/apps-script/
https://qiita.com/tags/gas
https://satori.marketing/marketing-blog/gas-introduction/