Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
20220428_実務で使える Google Apps Script ライブデモ勉強会#3
Search
Apachan
April 28, 2022
Programming
0
510
20220428_実務で使える Google Apps Script ライブデモ勉強会#3
Apachan
April 28, 2022
Tweet
Share
More Decks by Apachan
See All by Apachan
20220706_Google Apps Scriptを実演で学ぶ~ GAS × Slack ~
apachan
2
1.5k
20211111_実務で使えるGASライブデモ勉強会#2
apachan
0
100
20210921_LT_RPAの現実
apachan
0
2.6k
20210827_RPA勉強会!Google Apps Talk~GASでGmail活用術~
apachan
0
10k
実務で使えるGASライブデモ勉強会
apachan
0
94
Other Decks in Programming
See All in Programming
デミカツ切り抜きで面倒くさいことはPythonにやらせよう
aokswork3
0
200
GitHub Actions × AWS OIDC連携の仕組みと経緯を理解する
ota1022
0
240
「ちょっと古いから」って避けてた技術書、今だからこそ読もう
mottyzzz
1
260
CI_CD「健康診断」のススメ。現場でのボトルネック特定から、健康診断を通じた組織的な改善手法
teamlab
PRO
0
180
あなたの知らない「動画広告」の世界 - iOSDC Japan 2025
ukitaka
0
400
育てるアーキテクチャ:戦い抜くPythonマイクロサービスの設計と進化戦略
fujidomoe
1
150
どの様にAIエージェントと 協業すべきだったのか?
takefumiyoshii
2
610
プログラミングどうやる? ~テスト駆動開発から学ぶ達人の型~
a_okui
0
190
Breaking Up with Big ViewModels — Without Breaking Your Architecture (droidcon Berlin 2025)
steliosf
PRO
1
340
開発者への寄付をアプリ内課金として実装する時の気の使いどころ
ski
0
350
AIエージェント時代における TypeScriptスキーマ駆動開発の新たな役割
bicstone
4
1.5k
Cloudflare AgentsとAI SDKでAIエージェントを作ってみた
briete
0
120
Featured
See All Featured
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
Agile that works and the tools we love
rasmusluckow
331
21k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
960
Automating Front-end Workflow
addyosmani
1371
200k
The Power of CSS Pseudo Elements
geoffreycrofte
79
6k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.7k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
114
20k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
How GitHub (no longer) Works
holman
315
140k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
19
1.2k
Transcript
2021/04/28 1 ※ 本内容は個人的な見解であり、所属する組織と関係ありません。 実務で使える Google Apps Script ライブデモ勉強会#3 新しい出会いに準備万全!スマートな自己紹介
自己紹介 あぱchan @ApachanHonpo 3ヵ月15kg減 積立投資 某通信会社 2 複数活動中 2021年 11月
宣伝 3 徹底解説 RPAツール WinActor導入・応用 完全ガ イド 絶対失敗しない!ロボット 1000体導入してわかった RPA成功の秘訣
Google Apps Script 目的別リファレンス 実践サンプルコード付き GAS本発売間近!全面リニューアル!! 改訂版 2022/5/21 発売予定 2021/3 発売 2020/5 発売
改訂版 4 736P(初版496P) + PDF約150P Google Apps Script目的別リファレンス 実践サンプルコード付き 第2版
2022年5月21日発売予定 ・新IDE対応の大幅リニューアル ・200名育成の社内推進方法の紹介 ・使えるワンポイントテクニック
構成 5 章番 章名 章番 章名 1 Google Apps Script
基礎 11 WEB 2 JavaScript 基礎 12 Script 3 Spreadsheet 13 Blob 4 Gmail 14 Properties 5 Google Drive 15 日付・文字列・数値 6 Google Calendar 16 配列 7 Google Document 17 社内推進 8 Google Slides 18 ワンポイントテクニック 9 Google Form 19 サンプルスクリプト 10 UI PDF 特典
テーマ 6 新しい出会いに準備万全! スマートな自己紹介
Demo動画 7
ワークフロー 8 ② 自己紹介 テンプレート取得 ③ 自己紹介 スライド作成 自己紹介 フォーム入力
① 入力内容 取得 フォーム送信時 トリガー ※ スプレッドシート 利用なし
スプレッドシートの失敗パターン 9 最終行から取得データ取得 誤ってテキスト入力 ⇒最終行が変更
事前準備 10 (2) 自己紹介テンプレート (3) 保存用Googleスライド (1) Googleフォーム 自己紹介用Googleフォーム 事前にGoogeスライド(テンプレート)作成
作成した自己紹介スライドの保存
フロー 11 ② 自己紹介テンプレート取得 ③ 自己紹介スライド作成 ① 入力内容取得 フォーム送信された情報からFormResponseオブジェクト取得 FromResponseオブジェクトから、回答者メールアドレス、タイムスタンプ、各設問質問と回答取得
事前に用意したGoogleスライド(テンプレート)を取得 取得したスライドを保存用Googleスライドに追加 ①で取得した各値を②スライドへ反映(置換)
イベントオブジェクト 12 ケース① ケース② ケース③ フォーム 送信 シート 編集 スプシ
起動 イベントオブジェクト発生 ユーザー など ユーザー アドレス 値 など メールアドレス タイムスタンプ 回答内容 など 特定のイベントが起こると...
条件 13 ① コンテナバインドスクリプト ② トリガーとセット ③ トリガー設定した関数の引数から受け取り https://developers.google.com/apps-script/guides/triggers/events
引数の受け取り 14 function myFunction(e) { ~ }
イベントオブジェクト発生から取得 15 フォーム 送信 function myFunction(e) { console.log(e); } ①
イベントオブジェクトの発生 ③ イベントオブジェクトの中身 ② イベントオブジェクトの取得 { authMode: { めちゃ長い }, response: {}, source: {}, triggerUid: '9168778' } イベント オブジェクト FormResponse オブジェクト フォーム送信時のトリガー 引数で受け取り
FormResponseオブジェクト 16 FormResponseオブジェクト ItemResponseオブジェクト Itemオブジェクト 質問 (getTitle()で取得) 回答 (getResponse()で取得) Itemオブジェクト
(getItem()で取得) タイムスタンプ (getTimestamp()で取得) 回答者メールアドレス (getRespondentEmail()で取得) ItemResponseオブジェクト (getItemResponse()で取得)
ポイント 17 ・統一感のない自己紹介の撲滅 ・作成者負担の業務負担軽減 ・テンプレートを流用できる業務は他にもある?
End Of File 18