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
540
0
Share
20220428_実務で使える Google Apps Script ライブデモ勉強会#3
Apachan
April 28, 2022
More Decks by Apachan
See All by Apachan
20220706_Google Apps Scriptを実演で学ぶ~ GAS × Slack ~
apachan
2
1.6k
20211111_実務で使えるGASライブデモ勉強会#2
apachan
0
120
20210921_LT_RPAの現実
apachan
0
2.6k
20210827_RPA勉強会!Google Apps Talk~GASでGmail活用術~
apachan
0
10k
実務で使えるGASライブデモ勉強会
apachan
0
110
Other Decks in Programming
See All in Programming
Make SRE Operations Easier with Azure SRE Agent
kkamegawa
0
2.4k
RailsTokyo 2026#4: AI様があれば、 Hotwireの弱点は消えるか?
naofumi
5
1k
Copilot CLI の継戦能力を高める コンテキスト管理
nozomutu
1
1.1k
関係性から理解する"同一性"の型用語たち
pvcresin
2
620
生成AI時代にこそ効くGo | Why Go Works in the Age of Generative AI
mom0tomo
8
3k
気づいたらRubyで100作品 ー クリエイティブコーディングが生活の一部になるまで / 100 Ruby Sketches Later: How Creative Coding Became Part of My Life
chobishiba
3
500
RTSPクライアントを自作してみた話
simotin13
0
390
TypeScriptだけでAIエージェントを作る フロント・エージェント・インフラのフルスタック実践
har1101
6
1.2k
AIエージェントの隔離技術の徹底比較
kawayu
0
450
iOS26時代の新規アプリ開発
yuukiw00w
0
220
TypeSpec で繋ぐ複数プロダクトの型安全
maroon8021
1
270
Transactional Change Stream Processing With Debezium and Apache Flink
gunnarmorling
1
140
Featured
See All Featured
Chasing Engaging Ingredients in Design
codingconduct
0
200
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
1
240
The Spectacular Lies of Maps
axbom
PRO
1
770
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
160
Build your cross-platform service in a week with App Engine
jlugia
234
18k
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
130
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
350
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
1
130
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
520
How to train your dragon (web standard)
notwaldorf
97
6.6k
A better future with KSS
kneath
240
18k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.3k
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