- プロジェクトマネージャ(大阪)
- Webエンジニア(大阪PHP)
- ★東京・大阪/CS/MG
- 他64件の職種
-
開発
- Webエンジニア(大阪PHP)
- エンジニアリングマネージャ
- ブリッジSE/オフショア開発
- PM(楽楽シリーズ)
- テックリード(大阪/PHP)
- フロントエンドエンジニア
- ブリッジSE(大阪)
- エンジニアオープンポジション
- Javaエンジニア(楽楽明細)
- Webエンジニア
- Webエンジニア
- フロントエンド(リーダー)
- モバイルエンジニア
- Android/iOSアプリ
- 社内SE(大阪/セキュリティ)
- 社内SE(大阪/インフラ)
- 社内SE(大阪/クラウド)
- インフラエンジニア
- 品質管理/技術支援チーム
- QAリーダー/マネージャー
- 戦略企画・データマネジメント
- システム企画
- AI/機械学習エンジニア
- データマネジメント・戦略企画
- 社内SE(データエンジニア)
- UIデザイナー(リーダー)
- UI/UXマネージャー
- UIデザイナー
-
ビジネス
- プロジェクトマネージャ(大阪)
- 導入支援/導入コンサルタント
- PdM(楽楽シリーズ)
- 開発マネージャー
- プロダクトセキュリティ
- PMMプロダクトマーケティング
- アシスタントマネージャー
- 経営企画
- データマネジメント・マーケ戦略
- 法務
- 経営企画/事業分析
- 内部監査(業務監査)
- 法人営業
- ITセールス
- 営業企画オープンポジション
- ITセールス(福岡)
- ITセールス(名古屋)
- ITセールス(大阪)
- 法人営業/カスタマーサクセス
- フィールドセールス
- セールスマネージャー
- ビジネスオープン
- ITセールス経験者
- 製品企画/法要件(楽楽明細)
- オンラインマーケティング
- 営業推進リーダー(楽楽精算)
- ブランド企画・ブランディング
- ブランド企画
- マーケティングリーダー
- マーケティング担当
- オフラインマーケティング
- 製品企画/プロダクトマーケ
- CSマーケティング
- 企画マーケティング
- その他
5分で理解する!Google Apps Script超入門
はじめに
こんにちは、新卒で入って入社3年目のnorthmkyです。
いままでの投稿ではyumコマンドについてや文字コードなど実業務でも役立つ基礎知識をまとめたものを書いていましたが、今回はプライベートでGoogle Apps Script、略称GASに触れたのでご紹介したいと思います。
題名を「5分で理解する」などと自身でいうのもなんですが巷でよくあるキャッチーで怪しい、ほんまかいな...というようなものになっておりますが、嘘ではないと思います。
ただ前提としてJSの経験がある必要あります。逆に言えばWEB界隈でJSを触ったことがある方は学習コストがほぼ0になります。本記事を読めばやりたいことはすぐ書けます。 理由としては
- JSとパラダイムがほぼ一緒
- JSと文法がほぼ一緒
- 標準でついているメソッド名が直感的でわかりやすい
の3点です。 ほぼ同じ思想なので、あとは特有の押さえておくべき用語とスクリプトと操作するアプリ画面の対応関係がわかれば書けるようになります。 それでは前置きはこのくらいにして紹介に入りたいと思います。
Google Apps Script(GAS)とは
「Googleの各種アプリ(Google スプレッドシート/Googleドキュメントなど)をアプリ内ではなく外から操作できるJSライクなプログラミング言語」です。 エクセルに対するVBAの関係と一緒です1。
実現できることの例としては、指定時間になったら特定のセルの値を読み出して外部アプリに渡すbotであったり、スプレッドシートだけでなくgoogleカレンダーにまとめてスケジュール登録したり、などなどができます。2
色々できるのですが、本記事では読者のみなさんに馴染みがあると思われるスプレッドシートを題材にします。
早速GASを理解する
GASでは操作対象のアプリをオブジェクトとして扱います。 スプレッドシートの場合、覚えるべきオブジェクトは下記3点のみです。
- Spreadsheetオブジェクト
- Sheetオブジェクト
- Rangeオブジェクト
アプリとスクリプト内のオブジェクトは下図のような関係性になっています。 ウィンドウ左はおなじみのスプレッドシート、右はGASです。 図のスクリプトは「特定のセル範囲に値を入れる」処理をします。
実行すると下記のようになります。 好き、という文字列が指定したセル範囲(=range
)に格納されました。
どうでしょうか、説明はこれだけです。
値を入れるというだけの処理の紹介ですが、これだけでもうスプレッドシートを自分の好きなように操れる気がしないでしょうか。 特別な文法を覚えたりする必要もありません。 ここでは記載していませんが、分岐/繰り返しなど基本構文はもちろんありますし、標準メソッドもあるので安心です。 「いやメソッドいちいち調べる感じじゃ...?」と思われた方、安心してください。 こちらの標準エディタは補完機能付きなので、適当にメソッド名を打っても実現したいことができるメソッドを見つけられる確率が高いです。メソッド名がわかりやすい...素晴らしい...
おわりに
GASの超入門として、スプレッドシートに対して処理を行うことを通して、GASをどのように書けるかをお伝えしました。
今回はお話しませんでしたが、webAPIを叩く機能も標準でありますし、google本家、またそうでない人によるたくさんのGAS用ライブラリもgithubで公開されています。 ですのでtwitter/slackBotも 開発環境構築なしでGoogleアカウントがあれば誰でも作成できる という敷居の低さも魅力的なGAS、皆さんも試してみませんか?
題名を裏切らない内容になっていれば幸いです。
付録:スクリプト作成〜実行の簡単な流れ
- スクリプト作成方法
ツール
をクリックスクリプトエディタ
をクリック
これでスクリプトが立ち上がります。
- やや過大表現です。厳密にはGASは、エクセルに対するVBAのような、どこかのbookに紐付いて動く「Container Bound Script」と紐付かず単独で動く「Standalone Script」の2種類があるので厳密な表現ではないです。本記事では「Container Bound Script」のみを扱いますのでこのように表記しました。↩
- ここで私は基礎を学びました。他にもいろいろな実例を平易に書いてありとてもわかりやすいです。 https://tonari-it.com/google-apps-script-manual/#toc2↩