[D3] Google Apps Scriptハンズオン資料

Preview:

Citation preview

【もう人間が】Google Apps Scriptハンズオン!【頑張らない】~GASで日々のルーチンワークを自動化しよう~

Google Apps Scriptとは

• Googleが提供するサービス群を操作するためのAPI、及び実行環境

• スプレッドシート、Google Drive、Googleカレンダー、Googleサイトなどをjava scriptで操作することができる

どんなことができるの?•Google Drive • ファイルの作成、コピー、移動など

• Google Spread Sheet • データの読み取り、書き込み、レイアウトの操作

• Google Calendar • イベントの参照、登録

• Gmail • メールの参照、送信、タグの追加、削除

• その他 • トリガー実行、html作成、言語の翻訳、etc

メリット• ホスティング費用がかからない

• サーバメンテナンスを考えなくても良い

• 実行環境を選ばない

• MS Officeを知っている人なら学習コストが低く済む

注意点

• オンラインエディタなので使いづらい

• 外部ライブラリを読み込めない

• Google Apps Script用に書かれたもののみ

• APIアクセス制限が存在する

利用シーン

こんなこと繰り返しやってませんか?

1.チケット管理システムで一覧をCSVエクスポート

2.エクスポートしたファイルをExcelに貼り付けて整形

3.並べ替えのためにデータを手で加工

4.集計したデータをメールで定期報告

・2時間/週としても、年間約100時間程度の工数が毎年かかる ・手作業によるミスが発生する(条件間違い、加工ミス) ・担当者が変わると引き継ぎも大変

それGoogle Apps Scriptでできるよ

1.チケット管理システムからチケット一覧を取得

2. 取得したデータをGoogle Spread Sheetに保存

3.スクリプトでSpread Sheetのデータを加工、整形

4.集計したデータをメールで定期報告

・経験者なら1日~2日程度で作成可能 ・作成後は基本的に何もしなくて良い (API仕様などが変わった場合はメンテナンスコストがかかる)

Google Apps Scriptを活用した自動化の例

定型メール送信

• Spread Sheetから取得した値を定型文に当てはめてメールで送信

• -> 日報や定期報告業務の効率化

データの自動集計

• トリガーとWebAPIを利用して、外部システムから取得したデータをスプレッドシートに蓄積し、自動で集計する。

• -> 分析、定期報告業務の効率化

自動通知

• 課題やスケジュールの管理表などのステータスを定期的にチャットやメールなどで自動的に通知する。

• -> 報告業務の効率化

Web APIの作成

• GET、POSTイベントを利用して、spread sheetの内容からresponse dataを生成する。

• -> 開発、検証業務等の効率化

Webページの自動生成

• スプレッドシートに記載された内容を元に、Google SiteやHtmlService APIを使ってWebページを生成する。

• -> 情報共有の効率化

応用例

例) Google FormとGASを 組み合わせた問い合わせシステム1.Google Formで問い合わせデータを収集

2.Scriptでスプレッドシートから新規問い合わせを検索

3.新規問い合わせをChat/Mailに自動通知

4.担当者がスプレッドシートに回答を記載

5.Scriptで回答済みの問い合わせデータを元にWebページを作成

デモンストレーション

ハンズオン

サンプルコード1.初めてのGoogle Apps Script

2.Gmailの送信

3.Google Calendarの登録

4.Web APIとしての活用

5.Chatツールへのメッセージ送信

6.Webサイトの作成/更新

最後に

• 自動化を行う際は、現状の業務のAsIs/ToBeをきちんと分析し、費用対効果の高い箇所を見極めて導入を行うことが重要。

• 以上を踏まえて、日々の仕事の中の無駄をGoogle Apps Scriptで減らし、快適な業務環境を作りましょう!

Recommended