GASでできることは、Googleスプレッドシートと連携したあらゆるデータの入力と出力です。
「Google Apps Script」略してGASというスクリプト言語についてなにができるのか、深く理解されている方は少ないでしょう。GASは2009年に初版としてGoogleから発表されました。
Googleのさまざまな機能と連携することはもちろん、クラウドでの利用が可能であることから、企業でもスプレッドシートと連携して勤怠管理機能を作成する場合もある比較的新しいスクリプト言語です。
非常に多彩なことができるGASですが、利用方法を知らない、これからGASを理解したいという方に向けて便利な使い方や活用事例を解説します。また、GASの年収や、学習するためにおすすめの方法についても紹介していきます。
✓スクレイピングしたデータをスプレッドシートに自動で転写する
✓月毎の勤怠管理や入力チェックなど、業務にも利用できる
✓Gmailの内容をSlackやDiscordに転送することができる
✓GASで顧客管理を行うことができる
- 20日間の返金保証!
- 1万円OFFのクーポン配布!
\ お得に始めるオンラインスクール! /
CodeCamp公式サイトを確認GASでできることの例!具体的な使い方を紹介します
GASでできることは、Googleの既存の機能との連携によって多岐にわたります。例えばカレンダーに入力するときにスプレッドシートと連携することで入力を簡易化したり、Gmailの内容を別のアプリケーションに転送して通知したり、業務改善などに貢献することが可能です。
GASはスプレッドシートのツールから、スクリプトエディタを選択することで無料で利用することができます。
今回はGASがどんなことに利用できるのかを理解するために活用事例を5つピックアップしました。理解を深めるためにはどのように利用されるのかを知るのが一番です。順番に確認していきましょう。
Googleカレンダーとスプレッドシートを連携し入力を簡素にできる
GASの基本はスプレッドシートとの連携です。Googleカレンダーとスプレッドシートを連携したい、GUIでいちいち入力していくのが手間だと思っている人は一定数存在しているでしょう。
そんなときに利用できるのがGoogleカレンダーとの連携です。GoogleカレンダーにはカレンダーIDというものが存在しており、スプレッドシートにIDを定義することで、簡単に連携させることができます。
const CALENDAR_ID = 'XXXXXXXXX';
function getCalendarEvents() {
const calendar = CalendarApp.getCalendarById(CALENDAR_ID);
}
たったこれだけの記述でスプレッドシートとカレンダーの連携が可能となります。この後にシートに入力した情報をカレンダーに記録するなどの記述が必要になりますが、大事なことはGoogleの基本機能との連携がこれだけ簡単にできるということです。
スクレイピングしたデータをスプレッドシートに自動で転写する
スクレイピングと聞くとPythonを利用するという技術者は多いですが、結果的にCSVやTSV形式にして出力したものを整形することになるでしょう。そのような手間を省くことができるのはスプレッドシートとGASを利用することです。
簡単な抽出であればParserというライブラリがあるため、インストールすることでデータを取得しHTMLをパースすることができるでしょう。
あとは非常に容易で、SpreadsheetApp関数を利用することであらかじめ転写したいシート情報を取得します。その後、Parserによって取得したデータを、自分の好きなように整形した後、setValue関数に渡すだけです。これでスクレイピングしたデータを自動で転写することが可能となります。
月毎の勤怠管理や入力チェックなど、業務にも利用できる
スプレッドシートはいうなればクラウド上のエクセルのようなものです。そのためGASと合わせて利用することで、VBAのようにシートを増やしたり削除したりすることが可能です。これは月毎の勤怠管理に応用することができます。
具体的には出社したときに、スプレッドシート上の出勤ボタンを押すだけで日付と時刻情報を取得し、シート上に打刻する機能が簡単に作成できます。
また、テレワークなどを実施している場合には勤怠が疎かになりがちですが、クラウド上で管理できることからPCを起動してスクリプト実行ボタンを押さない限り打刻されないことでメリハリのついた時間管理を行うことが可能です。
案件例1.広告代理店向け業務支援ツールの開発
業務内容
広告代理店向け業務支援ツールの開発・運用・保守
必須スキルにJavaScriptと記載しておりますが、現場ではGoogle Apps Scriptを使用
GASの経験は不問
応募に必要なスキル
・JavaScript開発経験3年程度 ・なにかしらの開発経験のある方(Java、PHP、Ruby、pythonなど)
【歓迎スキル】
・GASの経験
・SQLの経験
報酬(月額)
~650,000円
※開発案件例は架空のものです。
Gmailの内容をSlackやDiscordに転送することができる
メールの確認をするためにメールアプリを毎回開くのは効率が良くないといえます。例えば社内でSlackを利用している、Discodeを利用している場合には、GASを利用することでその内容を転送し、通知することが可能です。
Slackを例にすると「Incoming Webhooks」を追加することで、特定のメールを転送することが可能となります。WebhookとはWebアプリケーションでイベントが発生したときに、外部サービスにHTTPで通知を行う仕組みです。
取得したSlackのWebhookを定義しておきます。その後GmailApp関数からメールの情報を選択し、Slackに対して送る情報を定義したら、UrlFetchApp関数に定義したWebhookを引き渡すことで転送することができます。
GASで顧客管理を行うことができる
スプレッドシートとGASを利用すれば顧客管理を行うことも可能です。例えば「売上収益」「発注情報」「成果経緯」「顧客情報」などのシートに情報を分散して管理します。
シートには顧客情報のデータのキーとなるような名目「A0001」などのキー情報を必ず設定することが重要です。売上収益、発注情報、成果経緯、の各データの先頭には「A0001」の情報がついており、その列の情報を顧客情報のシートに対して転写していきましょう。
これによってデータが必ずひとつのシートに集まるように管理することが可能です。スプレッドシートを擬似的なデータベースとして管理することで、GASを利用して顧客管理を行うことが可能となります。
言語名 | 人気ランキング | 案件の数 | 案件平均単価 | 習得のしやすさ | 環境構築のしやすさ | できること |
C++ | 1 | ★★★★★ | 71万円 | ★☆☆☆☆ | ★☆☆☆☆ | C++でできること |
C | 2 | ★★★★★ | 67万円 | ★☆☆☆☆ | ★☆☆☆☆ | C言語でできること |
Python | 3 | ★★★★☆ | 77万円 | ★☆☆☆☆ | ★★☆☆☆ | Pythonでできること |
JavaScript | 4 | ★★★☆☆ | 72万円 | ★☆☆☆☆ | ★★☆☆☆ | JavaScriptでできること |
SQL | 5 | ★★★☆☆ | 65万円 | ★★★☆☆ | ★☆☆☆☆ | SQLでできること |
Java | 6 | ★★★☆☆ | 69万円 | ★☆☆☆☆ | ★★☆☆☆ | Javaでできること |
HTML/CSS | 7 | ★★★☆☆ | 70万円 | ★★★★★ | ★★★★★ | HTMLでできること CSSでできること |
PHP | 8 | ★★☆☆☆ | 72万円 | ★★☆☆☆ | ★★☆☆☆ | PHPでできること |
COBOL | 9 | ★★☆☆☆ | 61万円 | ★☆☆☆☆ | ★☆☆☆☆ | COBOLでできること |
Ruby | 10 | ★★☆☆☆ | 80万円 | ★★☆☆☆ | ★★☆☆☆ | Rubyでできること |
Swift | 11 | ★☆☆☆☆ | 79万円 | ★★☆☆☆ | ★★★★☆ | Swiftでできること |
GASでできないこと
GASはタイムスケジュールを組んでおくことで自動でスクリプトを実行することはできますが、実際のブラウザをGASで操作することはできません。
リンクへアクセスするなどのような操作は可能ですが、例えば朝8時になったらブラウザを立ち上げ、タブを開いて、Googleから天気予報を検索して表示することはできません。
あくまでスクリプトとして設定されていることを行うことが可能な範囲であるため、それ以上のことは範囲外といえます。GASではURLを別のタブで開くなどの動作的なことはできないとされています。スクリプトであるということを意識して利用しましょう。
GASとは?
改めてGASとはGoogleによって無料で提供されているスクリプト言語です。JavaScriptと書き方が似ているため、JavaScriptを習得している人にとっては非常に簡単に感じる言語でしょう。
Googleアカウントとインターネット環境があれば誰でも利用できることが可能です。できることのなかでも説明しましたが、外部アプリケーションとの連携や、Googleの機能との連携が容易にできるサービスです。
GASは各種サービスとの連携が可能な、開発環境不要な言語
GASは各種サービスとの連携が可能です。連携できるGoogleの機能を以下に列挙します。
- Googleドライブ
- Googleカレンダー
- Googleドキュメント
- Googleスプレッドシート
- Googleフォーム
- Googleマップ
この他にも連携できるサービスはありますがGoogleのシステムだけでもこれだけの機能と連携が可能になっています。また、SlackやDiscodeなどの外部サービスなどとも連携が可能であり、GASで利用できるAPIを理解することでできることの幅は広がることでしょう。
GASの特徴
GASにはさまざまな特徴があります。外部アプリケーションとの連携もそのひとつですし、スクプトによって多くのことを効率化することができるのです。
もちろん、上記以外にも特筆するべき特徴があるためひとつずつ解説します。
開発環境を用意する必要がない
GASはスプレッドシート上で動き、クラウド上ですでに開発環境が整っています。そのため、自分で開発環境を用意する必要がありません。アカウントとインターネットに接続する環境があることで、すぐに開発に取り掛かることができます。
開発環境を用意しなくて良いというのは統一的な環境で共有して開発が可能であるということを指しています。また、バージョン情報に縛られることもないため、気にせず開発に集中することができるでしょう。
パソコンがシャットダウンしていてもクラウドで自動実行される
スプレッドシートはクラウド上に存在しています。Gmailなど当たり前に利用していますがメールの送受信などは常にクラウド上でやりとりされているのです。
ではGASでいうクラウドでの自動実行とはなにかというと「トリガー」という機能です。時間や日時によって自動でスクリプトを実行することを可能にしています。
勤怠管理の例でいえば、毎月1日に先月のシートをアーカイブし、今月のシートを作成するなどがトリガー機能によって実現することができるのです。
GASエンジニアの年収とキャリアパス
GASエンジニアの年収についてはフリーランスでの単価が70万であることや、複数の言語を学んでいることが前提であるため、GASだけでの年収を考えるのは難しいといえます。
しかしJavaScriptと同じような言語であることから、JavaScriptを学習するのがキャリアパスとしては順当でしょう。
GASエンジニアの平均年収は?
GASエンジニアの平均年収はフリーランスでいえば、単価70万円の業務があるため、単純に840万円という年収を出すことが可能です。
しかし、現実的に技術内容を考えるとJavaScriptと同様であると考えることができるため、平均年収は536万円ほどといえるでしょう。社内の業務改善などで利用されることも多いため、通常のITエンジニアの年収と相違がないと考えることもできます。
GASを学習する方法とは
GASは開発環境も構築する必要がなく、無料で利用できるため学習する環境としてはうってつけです。間違えた記述を行っても消えるようなデータもなく、スクリプト言語のため学習難易度もそこまで高くないといえるでしょう。
個人開発、趣味の範囲でのGAS入門者におすすめの学習
個人や趣味でGASを学習するためには、簡単なスクリプトをまずは自分で作ってみることです。そのためにおすすめの学習方法を紹介します。
1, 参考書を利用して学ぶ
GoogleAppsScriptについての書籍は多くあり、kindleなどでもすぐに見ることができるものもあります。そのため、参考書を一冊購入して、利用できること、作りたいものを明確にすることで、個人の開発は十分な学習ができるといえるでしょう。
2, コミュニティに入って学習を行う
コミュニティに所属することは、非常に刺激を受ける行動です。例えばオンラインサロンなどが現在流行しており、もくもく会やGASについて人数を制限してZoomなどで公演をしている方もいます。
そのため、自分が気に入ったコミュニティに所属することで学習を効果的にすることができるでしょう。
仕事につなげる、スキルを身につけるための学習
仕事としてスキルを身につけるためには、GASだけではなくそれ以外の機能を理解しなければなりません、外部APIや関数の使い方などの根本的な技術です。
幸いGASはJavaScriptと似ている言語のため、まずはJavaScriptの学習を行うことで基礎を身につけた上でGASの学習に取り掛かることがおすすめです。それ以外の方法として2点紹介します。
1, Udemyやドットインストールで実践的に学ぶ
UdemyやドットインストールではGASに関する詳細な講義を行っています。特にUdemyではビジネスパーソンに向けての業務効率化を専門としたGASの解説を行っているため、より実践的な業務の自動化について学習することが可能でしょう。
ドットインストールは入門的な内容を取り扱っているため、まずはドットインストールの内容を理解した後にUdemyでの学習を行うことで効率よく学習に取り組むことができるといえます。
2, プログラミングスクールを利用する
GASは業務効率化に非常に役に立つ言語といえます。そのため、GASを本格的に学んでキャリアにしていきたいと考えている方にはプログラミングスクールの利用をお勧めします。
GASはこれからのDXなどにも役立てることができる言語のひとつです。業務を効率化する・自動化することは企業にとっても非常に印象が良く、効果を数値で実感させやすいため、実績として残りやすいといえます。
そのため、本格的に学習を行いたいと考えている場合はGASを学ぶことができるプログラミングスクールを利用するのが良いでしょう。
GASでできることまとめ
GASでできることの活用事例、フリーランスの単価や、想定平均年収、言語の学習方法について解説してきました。GASは自動化に役立つ言語であり、今後RPAなどが市場においてさらに影響力を増してきたときにも、効率化の面で同じように重要となってくるでしょう。
技術としてはスクリプト言語のため、GASだけで仕事をしていくのは現実できではないですが、JavaScriptにつながる部分が多いため同時に学習することで効率的に理解することができるでしょう。
大企業などでは自由な開発は難しいですが、数値や実績を重んじるベンチャー企業などで活躍していきたいと考えている人にとって、GASやJavaScriptを学習することは良い選択肢です。効率的な学習を考えている場合は、プログラミングスクールを利用することをお勧めします。ぜひスクールの内容をチェックしてみてください。