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
その集計、GASに任せましょう / 20220202_automation
Search
Rakus_Dev
February 03, 2022
Technology
0
740
その集計、GASに任せましょう / 20220202_automation
Rakus_Dev
February 03, 2022
Tweet
Share
More Decks by Rakus_Dev
See All by Rakus_Dev
プロダクトづくりにAIを溶かす3つの壁 ― ラクス流AI浸透のススメ / 3 Barriers to AI in Products: The Rakus Way
rakus_dev
0
1.5k
設計フェーズを加速するAI活用戦略 / AI Strategy for Accelerated Design
rakus_dev
2
600
10年以上続くWebサービスのAIファースト時代への向き合い方 / Navigating the AI-First Era: A Strategy for Established Web Services
rakus_dev
0
370
楽楽明細開発部 | 組織的なAI駆動開発の推進 / Promoting organizational AI-driven development
rakus_dev
0
380
AIエージェントを使った爆速デモアプリ作成 / Rapid demo app creation using AI agents
rakus_dev
0
380
Claude Codeによる自律的並列分析の実践 / Practicing Autonomous Parallel Analysis with Claude Code
rakus_dev
0
420
コードを書かないマネージャーがつくるコンテキストエンジニアリング / Context Engineering Created by a Non-Coding Manager
rakus_dev
0
410
AIへの再指示を抑える要件、設計、デザイン等のモバイル開発コンテキストの渡し方
rakus_dev
0
160
モバイルアプリ向けに開発したAPIをMCP化したら便利そうだった / mobiletechcafe20250902-2
rakus_dev
0
160
Other Decks in Technology
See All in Technology
グローバルなコンパウンド戦略を支えるモジュラーモノリスとドメイン駆動設計
kawauso
3
9.7k
AI エージェントを評価するための温故知新と Spec Driven Evaluation
icoxfog417
PRO
2
850
Excelデータ分析で学ぶディメンショナルモデリング ~アジャイルデータモデリングへ向けて~ by @Kazaneya_PR / 20251126
kazaneya
PRO
3
440
Digitization部 紹介資料
sansan33
PRO
1
6k
AI駆動開発を実現するためのアーキテクチャと取り組み
baseballyama
17
14k
Building AI Applications with Java, LLMs, and Spring AI
thomasvitale
1
250
個人から巡るAI疲れと組織としてできること - AI疲れをふっとばせ。エンジニアのAI疲れ治療法 ショートセッション -
kikuchikakeru
5
1.9k
事業状況で変化する最適解。進化し続ける開発組織とアーキテクチャ
caddi_eng
1
8.2k
組織の“見えない壁”を越えよ!エンタープライズシフトに必須な3つのPMの「在り方」変革 #pmconf2025
masakazu178
1
1k
プロダクト負債と歩む持続可能なサービスを育てるための挑戦
sansantech
PRO
1
1.1k
GitHub を組織的に使いこなすために ソニーが実践した全社展開のプラクティス
sony
0
570
.NET 10のEntity Framework Coreの新機能
htkym
0
130
Featured
See All Featured
Facilitating Awesome Meetings
lara
57
6.6k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.6k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
BBQ
matthewcrist
89
9.9k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Documentation Writing (for coders)
carmenintech
76
5.1k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Testing 201, or: Great Expectations
jmmastey
46
7.8k
Optimizing for Happiness
mojombo
379
70k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.2k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.1k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
Transcript
その集計、GASに任せましょう @自動化大好きエンジニアLT会 – vol.6 2022/2/2 株式会社ラクス 吉田 均
自己紹介 吉田 均 ( よしだ ひとし ) SIer を経て 2020 年
11 月にラクス入社 楽楽精算モバイルアプリ開発チームのリー ダーを担当 趣味: TV ゲーム ( 今更 Overcooked2 にハマる ) Android 開発 (JetpackCompose 楽しい )
個人開発的なもの ゲームダメージチェッカー ・ Kotlin ・ JetpackComponent パスワード生成器 ・ JetpackCompose ・
Firebase Hosting コマンド式ゲーム ・ JetpackCompose+Hilt ・ Firebase RDB 野球ゲーム的な何か … ・ Compose?Flutter? 頓挫
これはGASによって定型作業の 時間を半減したお話です 本日の要旨
存在していた課題 • 管理業務の一環としてメンバーの日々の作業内容と実働を週一でチェックし ている ( どんな作業にどれだけ時間使ったか ) • Redash から
Excel にエクスポートして手作業 • 少ない時はよかったがメンバーも増えてきて地味にコストがかさみ始める ◦ 多い時で週 2h ほどこの作業に使用
どうしたものか ん?表計算?定型作業?
そうだ、GASを使おう
GASとはなにか • 正式名称 GoogleAppScript で Google の提供するプログラミング言語 • Google アカウントさえあれば無償利用可能
( 無償の場合一部制限あり ) • ブラウザ上で直接コーディングできるのでエディタも不要 • ベースは JavaScript なので軽量で簡易な内容であれば習熟も容易 • 各 Google サービスと親和性が高い ( 連携が容易 ) • API さえあれば Google 以外のサービスとも連携可能 (Slack 、 Teams 等 ) 自動化入門としてはうってつけの手軽さ、汎用性の高さがウリ ( 特に自社が GoogleWorkspace を採用している場合、相性抜群 )
GASでできること • Gmail × SpreadSheet → 問い合わせメールを動的に作成し自動返信 • Calendar ×
Slack → その日の予定をチャットで通知 • Document × SpreadSheet → 断片的なメモから議事録を自動作成 • SpreadSheet × LINE → チャットボットを作成 • SpreadSheet → API 化して簡易 DB として利用 • SpreadSheet → 計算処理を自動化 ★今回やったこと
STEP1
GASでバリデートを自動化 人がやる場合 1. 表を一行ずつ目視 2. 該当セルの入力内容がルールを満たしてい るか突き合わせて確認 3. 満たしていない場合、コメントを記入 GAS
に任せる場合 1. 表を 1 行ずつループ 2. 該当セルの入力内容がルールを満たしてい るか判定 3. 満たしていない場合、同行右端列にコメント を記入 BEFORE AFTER
セル内容を取得する場合 セルに書き込む場合
STEP2
GASで担当者別稼働集計を自動化 人がやる場合 1. 表を担当者別でフィルタリング 2. 稼働行の値を加算 3. 合計時間を記載 GAS に任せる場合
1. 表を担当者別でフィルタリング 2. 稼働行の値を取得し加算 3. 合計時間を出力 BEFORE AFTER フィルタリングとか簡単にできるんだろうか … ?
できます
フィルタリングには FilterCriteria を使用 フィルター条件を準備 フィルターを適用 終わったフィルターをリセット 指定できるトリガー ( フィルタリング条件 )
例 • setHiddenValues … 指定した値に一致しないセルのみ表示 • whenCellEmpty … 空のセルのみ表示 • whenTextEqualTo … 引数で指定した文字列に一致するセルのみ表示
GASによって定型作業時間の半 減に成功 結果
おすすめポイント ❖ Google アカウントさえあれば無償利用可能 ( 無償の場合一部制限あり ) ❖ ブラウザ上で直接コーディングできるのでエディタも不要 ➢
手軽に始められ敷居が低い ❖ 各 Google サービスと親和性が高い ( 連携が容易 ) ❖ API さえあれば Google 以外のサービスとも連携可能 (Slack 、 Teams 等 ) ➢ 拡張性が高く自分達の環境にカスタマイズしやすい ❖ ベースは JavaScript なので軽量で簡易な内容であれば習熟も容易 ❖ 目に見えて結果が分かるので楽しい ➢ エンジニアでない方に特にオススメ
GASすごい Thank you for listening !! 結論