Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
GAS for DTPer -- はじめの一歩
Search
Yusuke S.
June 29, 2019
Technology
510
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
GAS for DTPer -- はじめの一歩
DTP Scripterに向けたGoogle Apps Scriptのはじめの一歩です
Yusuke S.
June 29, 2019
More Decks by Yusuke S.
See All by Yusuke S.
InDesignのスクリプトを使い倒そう!
uskes
0
1.2k
[page2020] スクリプトで未然に防ぐInDesignの不具合と作業ミス
uskes
1
2.3k
品質を担保するInDesignスクリプト
uskes
0
390
Other Decks in Technology
See All in Technology
[2026 Oracle Technical Deep Dive] エンタープライズAIエージェントを支えるOCIソリューション。ラインナップと特徴を理解しよう! (2026年9月17日開催)
oracle4engineer
PRO
0
210
IR Today: Theory, Practice, and Agents
dtunkelang
0
320
Argo CDとAtlantisで実現するインフラ管理のセルフサービス化──小規模SREチームで支えるプラットフォーム
cassius7
0
270
Lambda MicroVMsが分からなすぎたので使い所を1から考えてみた
tsukuboshi
2
290
AI Native Platform Engineering 〜PlatformとAgileで“作る速さ”を“価値”へ〜
uya116
0
590
[2026-09-30]ロックンロールは鳴り止まないっ - 信頼性かまってちゃん - 「データ駆動を投げ捨ててまで。」追いかける信頼性改善に向けた取り組みの話
tosite
0
180
検証フェーズはAIの回答を判断するための学習機会
toru_kubota
2
280
カンファレンスに参加した後の浮遊感とセルフケア
pauli
0
300
BedrockとLambdaで作る リアルタイム進行型推理ゲーム
kawametho
0
160
組み立てて楽しむ AWS Blocks 入門
kmiya84377
0
130
全社共通データ基盤をつくる。ソニーのDatabricks活用とデータガバナンス設計の裏側
sony
0
290
認知負荷を吸収し、プロダクトをまたぐPR Preview基盤の設計事例
taiki45
2
570
Featured
See All Featured
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
2k
Claude Code のすすめ
schroneko
67
230k
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
320
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
3k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
690
Highjacked: Video Game Concept Design
rkendrick25
PRO
1
470
Balancing Empowerment & Direction
lara
6
1.3k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.6k
brightonSEO & MeasureFest 2025 - Winning Strategies for Black Friday CRO & PPC - Christian Goodrich
cargoodrich
3
860
Marketing to machines
jonoalderson
1
5.8k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
500
A Soul's Torment
seathinner
8
3.7k
Transcript
DTPerのスクリプトもくもく会 #13 Uske_S GAS for DTPer はじめの一歩
Uske_S DTPerのスクリプトもくもく会 #13 • GASの概要 • GASでできること • GAS周辺情報 目次
― GAS for DTPer • まずは動かしてみる • オブジェクトモデルの比較 • GASでの値の出し入れ • まとめ
Google Appsとは、 Google が提供するオンラインアプリケーションパック。 Calendar、Gmail、Docs、Drive、Sheets、そしてSlidesなどがあります。 Google Apps Scriptとは、それらAppsを操作するクラウド上の JavaScriptプラットフォームで す。
GAS(Google Apps Script)の概要
今日の目標 1 GASでどんなことができる のか? を知ってもらう 2 スクリプトエディタを 操作できるようになる 3 簡単なスクリプトを
書けるようになるための情 報を整理する
GASでできること • スプレッドシートの内容からメールを作成して送信する • カレンダーの予定をスプレッドシートに記入 • メールの内容を検索してスプレッドシートに一覧表示 • スプレッドシートで使えるオリジナル関数を定義する
GASでできること • スプレッドシートの内容からツイート • connpassのイベントを特定のキーワードで検索して自分宛に定期的にメー ル送信 • ツイートを検索しSlackに内容を投稿
GASの周辺情報 • 公式ドキュメント https://developers.google.com/apps-script/reference/ • コミュニティフォーラム https://groups.google.com/forum/#!forum/google-apps-api-japan • GCPUG(ユーザーグループ) https://gcpug.jp/
GASの周辺情報 • G Suite Developer Hub(Apps Script) https://script.google.com/home ここで開発したスクリプトの一括管理が可能。 新規スクリプト作成もここからできる。
まずは作成してみよう。
まずは動かしてみる 新規スクリプトボタンを押すとスクリプトエディタが起動します。 この myFunction() { } の間にスクリプトを書いていく形になります。
続いてGoogle Driveに新規スプレッドシートを作成します。 開いたスプレッドシートのアドレスからID部分をコピーしましょう。
function setContents() { var ssObj = SpreadsheetApp.openById("[シートID]"); var sheetObj =
ssObj.getActiveSheet(); var rangeObj = sheetObj.getRange("A1"); rangeObj.setValue("Hello, World!"); }; このコードをスクリプトエディタに入力して実行してみましょう。 [シートID] に先ほど作成したスプレッドシートのIDを入力します。
A:保存ボタン(⌘+S) B:トリガーボタン C:実行ボタン D:デバッグボタン E:実行する関数 コンソールログを利用した 場合(後述)は、 ⌘+Enter でログを表示できる
実行すると以下のようなダイアログが出るはずです。 「許可を確認」ボタンを押してください。
以下の流れでスクリプトを承認します。
以下の流れでスクリプトを承認します。
以下の流れでスクリプトを承認します。
以下の流れでスクリプトを承認します。
これで、指定したスプレッドシートの A1セルに値をセットできました。
ログとして何か記録したい場合( ExtendScriptでいうところの$.writeln())は、 Logger.log() メソッドを利用します。
デバッグ中にスクリプトを止めて 変数の値などを確認する場合 は、スクリプトの任意の場所に ブレークポイントを設定してお き、デバッグボタンを使ってデ バッグします。
ExtendScript Application -Document -TextFrame -Contents ExtendScriptとのオブジェクトモデルの比較 Google Sheet SpreadsheetApp -Sheet
-Range -Value
GASでの値(Value)の出し入れ ExtendScriptでは値を代入する、という形で実装しますが、 e. g.) app.activeDocument.textFrames[0].contents = “hoge”; GASではgetter/setterというメソッドの引数に値を渡してセットします。 e. g.)
SpreadsheetApp.getActiveSheet().getDataRange().setValues(hoge); 具体的なメソッドの種類や使い方は公式ドキュメントを参照して下さい。
まとめ • まずはやってみよう! サンプルはネットにゴロゴロ転がっている • オブジェクトモデルが何となく掴めればかんたん • 業務にGoogle Appsを利用していれば業務効率化の効果大