Google Apps Script実践プログラミング (単行本)
GmailやGoogleスプレッドシートといった、便利なGoogle関連サービスが多くの企業で導入されています。Google Apps Scriptを使えばこれらのサービスをさらに使いやすくできます。本書は、Google Apps Script(GAS)を用いた業務効率化・自動化に取り組む方のために、メール送付の自動化やシフト管理表をGoogleカレンダーに反映させるなど、9つの活用ケースを通して学ぶ実践書です。また、Google Apps Script基礎文法も解説しています。
01 本書想定読者
02 本書を読むにあたっての注意事項
Chapter 01 Google Apps Script 基礎
01-01 Google Apps Scriptとは
01-02 スクリプトエディタについて
01-02-01 スクリプトエディタの使い方
01-02-02 スタンドアロンスクリプト
01-02-03 コンテナバインドスクリプト
01-03 ログとデバッグについて
01-04 リファレンスを活用する
Chapter 02 業務効率化①:フォーム入力からメールを自動送信する
02-01 問題設定とワークフロー・必要なスキル
02-01-01 活用シーン
02-01-02 ワークフロー
02-01-03 必要なスキル
02-02 Gmailサービスを使用しメールを送信する
02-02-01 フォームの準備
02-02-02 コンテナバインドスクリプトの準備
02-02-03 メール送信
02-03 Eventオブジェクトを用いて記入情報を取得する
02-04 Eventオブジェクトで取得したメールアドレス宛にメールを送信する
02-04-01 コードを結合
02-04-02 トリガーの設定
02-04-03 フォームの送信
02-05 フォーム記入内容を元に文章を作成する
02-05-01 replace()メソッド
02-05-02 複数行に渡る記述と改行
02-05-03 カスタマイズした本文をメールで送信
Chapter 03 業務効率化②:フォーム入力からLINEに通知を送る
03-01 問題設定とワークフロー・必要なスキル
03-01-01 活用シーン
03-01-02 ワークフロー
03-01-03 必要なスキル
03-02 LINE Messaging API
03-02-01 APIとは
03-02-02 LINE Messaging APIとは
03-02-03 LINE Messaging APIの準備
03-03 UrlFetchAppを使用しGASからLINEに通知を送る
03-03-01 新しいスクリプトファイルを作成
03-03-02 APIを叩くのに必要な情報の取得
03-03-03 APIを使用するベース部分
03-04 フォーム記入内容を元にLINEに通知を送る
03-04-01 Eventオブジェクトを使用しフォーム記入情報を用いる
03-04-02 フォーム情報が記入された通知を確認する
Chapter 04 業務効率化③:カレンダー情報をSlackに通知する
04-01 問題設定とワークフロー・必要なスキル
04-01-01 活用シーン
04-01-02 ワークフロー
04-01-03 必要なスキル
04-02 Slack Webhook の設定
04-02-01 Webhookとは
04-02-02 Slack Webhookの設定を行う
04-03 UrlFetchAppを使用しGASからSlackに通知を送る
04-03-01 スタンドアロンスクリプトの作成
04-03-02 Slackに通知を送る
04-04 カレンダーの情報を取得する
04-04-01 Calendarサービスとは
04-04-02 カレンダーIDの確認
04-04-03 GASを用いてカレンダーの情報を取得する
04-05 メンバーが休みかどうかの判定を行う
04-05-01 休みかどうかの判定を行うif文
04-06 休暇メンバーの名前をSlackに通知する
04-06-01 他のメンバーのカレンダー情報を追加
04-06-02 他の人のカレンダーイベントを取得
04-06-03 Slackに通知を行う
Chapter 05 業務効率化④:リマインドメールを送る
05-01 問題設定とワークフロー・必要なスキル
05-01-01 活用シーン
05-01-02 ワークフロー
05-01-03 必要なスキル
05-02 1つのイベントから詳細等を取得する
05-02-01 特定期間のイベントを取得
05-02-02 イベント詳細の確認
05-02-03 ゲスト情報の確認
05-03 イベントURLを取得する
05-03-01 イベントIDの取得
05-03-02 イベントURLの取得
05-04 1人にリマインドメールを送る
05-04-01 メールに記載する情報
05-04-02 出欠未回答かどうかを判定
05-04-03 出欠未回答だった場合の処理
05-04-04 メールの確認
05-05 全てのイベントに対してリマインドメールを送る
05-05-01 他のゲストに対してもメールを送る
05-05-02 すべてのイベントをチェックする
Chapter 06 業務効率化⑤:シフト管理表をGoogleカレンダーに反映する
06-01 問題設定とワークフロー・必要なスキル
06-01-01 活用シーン
06-01-02 ワークフロー
06-01-03 必要なスキル
06-02 シートから情報を取得する
06-02-01 Spreadsheetサービスとは
06-02-02 使用するスプレッドシートについて
06-02-03 Spreadsheetサービスを用いてセル情報を取得
06-03 必要な情報をオブジェクトでまとめる
06-03-01 メンバーの連想配列(オブジェクト)を作成する
06-03-02 シフト規則の連想配列(オブジェクト)を作成する
06-04 イベントを作成する
06-05 シフトをカレンダーに反映させる
06-05-01 大枠の流れ
06-05-02 イベントを作成する(createEventの修正)
06-05-03 固定情報の取得
06-05-04 1人目の1つのシフトを反映
06-05-05 1人目の全てのシフトを反映
06-05-06 全員のシフトを反映
Chapter 07 業務効率化⑥:Gmailをスプレッドシートに抽出する
07-01 問題設定とワークフロー・必要なスキル
07-01-01 活用シーン
07-01-02 ワークフロー
07-01-03 必要なスキル
07-02 メールを取得する
07-02-01 Gmailサービスについて
07-02-02 メールを取得する
07-03 メールの必要な情報を取得する
07-03-01 日付の取得
07-03-02 特定の文字列の取得
07-04 1つのメールをシートに書き込む
07-05 全てのメールをシートに書き込む
07-05-01 書き込む情報を2次元配列で格納
07-05-02 全てのお問い合わせメールを書きこむ
Chapter 08 業務効率化⑦:議事録を事前に準備する
08-01 問題設定とワークフロー・必要なスキル
08-01-01 活用シーン
08-01-02 ワークフロー
08-01-03 必要なスキル
08-02 特定のイベント情報を抽出する
08-02-01 イベント情報を抽出する
08-02-02 特定のイベントのみを抽出する
08-03 Googleドキュメントを作成する
08-03-01 Documentサービスについて
08-03-02 Googleドキュメントの新規作成
08-04 Googleドキュメントにテキストを挿入してみる
08-04-01 タイトルの挿入
08-04-02 タイトル以外の情報を挿入する
08-05 イベント内容を元に議事録を作成する
08-05-01 必要な情報をイベントから取得
08-05-02 議事録名の変更
08-05-03 イベント情報を概要に挿入
08-05-04 全てのイベントに対して議事録を作成
Chapter 09 業務効率化⑧:申込・見積・メール送付を自動化する
09-01 問題設定とワークフロー・必要なスキル
09-01-01 活用シーン
09-01-02 ワークフロー
09-01-03 必要なスキル
09-02 フォームの情報を取得する
09-02-01 申込フォームの準備
09-02-02 フォームの情報を取得
09-03 見積書シートに情報を記入する
09-03-01 見積書のテンプレートを用意する
09-03-02 シートの複製
09-03-03 見積書シートに情報を記入する①
09-03-03 見積書シートに情報を記入する②
09-04 作成した見積書をPDF化しフォルダに格納
09-04-01 URLの指定
09-04-02 オプションの指定
09-04-03 APIを叩きPDFをフォルダに保存
09-05 PDFをメールに添付し送信
Chapter 10 業務効率化⑨:Web情報を自動で収集する(Webスクレイピング)
10-01 問題設定とワークフロー・必要なスキル
10-01-01 活用シーン
10-01-02 ワークフロー
10-01-03 必要なスキル
10-01-04 Webスクレイピングとは
10-01-05 HTMLとは
10-02 Parserを用いて受講生の数を取得する
10-02-01 外部ライブラリ(Parser)を読み込む
10-02-02 今回使用するサイト
10-02-03 受講生の数を取得
10-03 Parserを用いてレビューの数を取得する
10-04 取得した情報をシートに書き込む
10-05 おまけ:データの可視化
Chapter 11 Google Apps Script 基礎文法
11-01 四則演算
11-02 変数・定数
11-03 データ型
11-04 配列
11-05 オブジェクト
11-06 制御構文
11-06-01 if文による条件分岐
11-06-02 for文による繰り返し
11-07 関数
11-08 組み込みオブジェクト
02 本書を読むにあたっての注意事項
Chapter 01 Google Apps Script 基礎
01-01 Google Apps Scriptとは
01-02 スクリプトエディタについて
01-02-01 スクリプトエディタの使い方
01-02-02 スタンドアロンスクリプト
01-02-03 コンテナバインドスクリプト
01-03 ログとデバッグについて
01-04 リファレンスを活用する
Chapter 02 業務効率化①:フォーム入力からメールを自動送信する
02-01 問題設定とワークフロー・必要なスキル
02-01-01 活用シーン
02-01-02 ワークフロー
02-01-03 必要なスキル
02-02 Gmailサービスを使用しメールを送信する
02-02-01 フォームの準備
02-02-02 コンテナバインドスクリプトの準備
02-02-03 メール送信
02-03 Eventオブジェクトを用いて記入情報を取得する
02-04 Eventオブジェクトで取得したメールアドレス宛にメールを送信する
02-04-01 コードを結合
02-04-02 トリガーの設定
02-04-03 フォームの送信
02-05 フォーム記入内容を元に文章を作成する
02-05-01 replace()メソッド
02-05-02 複数行に渡る記述と改行
02-05-03 カスタマイズした本文をメールで送信
Chapter 03 業務効率化②:フォーム入力からLINEに通知を送る
03-01 問題設定とワークフロー・必要なスキル
03-01-01 活用シーン
03-01-02 ワークフロー
03-01-03 必要なスキル
03-02 LINE Messaging API
03-02-01 APIとは
03-02-02 LINE Messaging APIとは
03-02-03 LINE Messaging APIの準備
03-03 UrlFetchAppを使用しGASからLINEに通知を送る
03-03-01 新しいスクリプトファイルを作成
03-03-02 APIを叩くのに必要な情報の取得
03-03-03 APIを使用するベース部分
03-04 フォーム記入内容を元にLINEに通知を送る
03-04-01 Eventオブジェクトを使用しフォーム記入情報を用いる
03-04-02 フォーム情報が記入された通知を確認する
Chapter 04 業務効率化③:カレンダー情報をSlackに通知する
04-01 問題設定とワークフロー・必要なスキル
04-01-01 活用シーン
04-01-02 ワークフロー
04-01-03 必要なスキル
04-02 Slack Webhook の設定
04-02-01 Webhookとは
04-02-02 Slack Webhookの設定を行う
04-03 UrlFetchAppを使用しGASからSlackに通知を送る
04-03-01 スタンドアロンスクリプトの作成
04-03-02 Slackに通知を送る
04-04 カレンダーの情報を取得する
04-04-01 Calendarサービスとは
04-04-02 カレンダーIDの確認
04-04-03 GASを用いてカレンダーの情報を取得する
04-05 メンバーが休みかどうかの判定を行う
04-05-01 休みかどうかの判定を行うif文
04-06 休暇メンバーの名前をSlackに通知する
04-06-01 他のメンバーのカレンダー情報を追加
04-06-02 他の人のカレンダーイベントを取得
04-06-03 Slackに通知を行う
Chapter 05 業務効率化④:リマインドメールを送る
05-01 問題設定とワークフロー・必要なスキル
05-01-01 活用シーン
05-01-02 ワークフロー
05-01-03 必要なスキル
05-02 1つのイベントから詳細等を取得する
05-02-01 特定期間のイベントを取得
05-02-02 イベント詳細の確認
05-02-03 ゲスト情報の確認
05-03 イベントURLを取得する
05-03-01 イベントIDの取得
05-03-02 イベントURLの取得
05-04 1人にリマインドメールを送る
05-04-01 メールに記載する情報
05-04-02 出欠未回答かどうかを判定
05-04-03 出欠未回答だった場合の処理
05-04-04 メールの確認
05-05 全てのイベントに対してリマインドメールを送る
05-05-01 他のゲストに対してもメールを送る
05-05-02 すべてのイベントをチェックする
Chapter 06 業務効率化⑤:シフト管理表をGoogleカレンダーに反映する
06-01 問題設定とワークフロー・必要なスキル
06-01-01 活用シーン
06-01-02 ワークフロー
06-01-03 必要なスキル
06-02 シートから情報を取得する
06-02-01 Spreadsheetサービスとは
06-02-02 使用するスプレッドシートについて
06-02-03 Spreadsheetサービスを用いてセル情報を取得
06-03 必要な情報をオブジェクトでまとめる
06-03-01 メンバーの連想配列(オブジェクト)を作成する
06-03-02 シフト規則の連想配列(オブジェクト)を作成する
06-04 イベントを作成する
06-05 シフトをカレンダーに反映させる
06-05-01 大枠の流れ
06-05-02 イベントを作成する(createEventの修正)
06-05-03 固定情報の取得
06-05-04 1人目の1つのシフトを反映
06-05-05 1人目の全てのシフトを反映
06-05-06 全員のシフトを反映
Chapter 07 業務効率化⑥:Gmailをスプレッドシートに抽出する
07-01 問題設定とワークフロー・必要なスキル
07-01-01 活用シーン
07-01-02 ワークフロー
07-01-03 必要なスキル
07-02 メールを取得する
07-02-01 Gmailサービスについて
07-02-02 メールを取得する
07-03 メールの必要な情報を取得する
07-03-01 日付の取得
07-03-02 特定の文字列の取得
07-04 1つのメールをシートに書き込む
07-05 全てのメールをシートに書き込む
07-05-01 書き込む情報を2次元配列で格納
07-05-02 全てのお問い合わせメールを書きこむ
Chapter 08 業務効率化⑦:議事録を事前に準備する
08-01 問題設定とワークフロー・必要なスキル
08-01-01 活用シーン
08-01-02 ワークフロー
08-01-03 必要なスキル
08-02 特定のイベント情報を抽出する
08-02-01 イベント情報を抽出する
08-02-02 特定のイベントのみを抽出する
08-03 Googleドキュメントを作成する
08-03-01 Documentサービスについて
08-03-02 Googleドキュメントの新規作成
08-04 Googleドキュメントにテキストを挿入してみる
08-04-01 タイトルの挿入
08-04-02 タイトル以外の情報を挿入する
08-05 イベント内容を元に議事録を作成する
08-05-01 必要な情報をイベントから取得
08-05-02 議事録名の変更
08-05-03 イベント情報を概要に挿入
08-05-04 全てのイベントに対して議事録を作成
Chapter 09 業務効率化⑧:申込・見積・メール送付を自動化する
09-01 問題設定とワークフロー・必要なスキル
09-01-01 活用シーン
09-01-02 ワークフロー
09-01-03 必要なスキル
09-02 フォームの情報を取得する
09-02-01 申込フォームの準備
09-02-02 フォームの情報を取得
09-03 見積書シートに情報を記入する
09-03-01 見積書のテンプレートを用意する
09-03-02 シートの複製
09-03-03 見積書シートに情報を記入する①
09-03-03 見積書シートに情報を記入する②
09-04 作成した見積書をPDF化しフォルダに格納
09-04-01 URLの指定
09-04-02 オプションの指定
09-04-03 APIを叩きPDFをフォルダに保存
09-05 PDFをメールに添付し送信
Chapter 10 業務効率化⑨:Web情報を自動で収集する(Webスクレイピング)
10-01 問題設定とワークフロー・必要なスキル
10-01-01 活用シーン
10-01-02 ワークフロー
10-01-03 必要なスキル
10-01-04 Webスクレイピングとは
10-01-05 HTMLとは
10-02 Parserを用いて受講生の数を取得する
10-02-01 外部ライブラリ(Parser)を読み込む
10-02-02 今回使用するサイト
10-02-03 受講生の数を取得
10-03 Parserを用いてレビューの数を取得する
10-04 取得した情報をシートに書き込む
10-05 おまけ:データの可視化
Chapter 11 Google Apps Script 基礎文法
11-01 四則演算
11-02 変数・定数
11-03 データ型
11-04 配列
11-05 オブジェクト
11-06 制御構文
11-06-01 if文による条件分岐
11-06-02 for文による繰り返し
11-07 関数
11-08 組み込みオブジェクト