ホッピーセットください。

黒で。牛筋煮込みも。

部長「今年の売上を計算してメールで送って欲しくて」【GAS】

部長「これから毎年やってもらうから。」

 

f:id:pakamori:20191114182932p:plain

わし「かしこまりたくねぇ。」

部長「何とか頼んだ。」

わし「んーしかも毎年か。スプレッドシートで売上データ貰ったけど、これボタン1つで計算してメール送信まで出来たりしないかなー。」

 

前提として

Googleスプレッドシートとは、Googleに登録していると使えるExcelのような機能です。他にもWordに代わるGoogleドキュメントPowerPointに代わるGoogleスライドが提供されています。

わし「スプレッドシートで計算したり、自動でメールを送る方法を検索...」

わし「このGAS(ガス)ってやつ使えばできるかな?」

 

GASとは?業務を効率的にするためのプログラミング!

f:id:pakamori:20191114183414p:plain

GASとは、Google Apps Scriptの略で、事務作業などをスプレッドシートで行う際に、覚えておくと便利なプログラミング言語です。実際に今回の例を元にGASを試してみましょう。

わし「これが部長からもらった月ごとの売上シート!」

f:id:pakamori:20191114162331j:plain

わし「ちなみにこのシートは"売上(万円)"ってことか?」

部長「んや、"売上(円)"や。」

わし「辞めてぇ。」

 

GASを使ってみる。

わし「まずはGASを書く画面(エディタ)に移動する!」

f:id:pakamori:20191114162957j:plain

上のツールバーから、「ツール>スクリプトエディタ」をクリックするとプログラムを書く画面(エディタ)に移動できます。

 

f:id:pakamori:20191114163940j:plain


主に使うのは上の2箇所。コードを書く部分と、そのコードを実行する部分です。

わし「準備おっけーや。今回やることは、

・さっきのシートの月ごとの売上の合計を出す。

・売上をメールで送信する。

の2つ。合計はSUM関数でも簡単に計算出来るけど、練習を兼ねてプログラムとして書いてみる。」

 

プログラムを書いてみる【売上合計を求めたい】

わし「まず売上を合計する処理を書いてみる!」

f:id:pakamori:20191114165043j:plain

わし「//って書いている部分に何をやっているかまとめてみた。」

色々書いていますが、このソースを丸々書くことで元々のシートの「売上」列の数字を全て合計することが出来ます。

6行目のuriageAryには[2000, 2000, 3000, 2000, 1000...]のように毎月の売上が格納されるので、それ値を全て足しこんで11行目でuriageTotalに入れる。という内容です。

わし「つまりuriageTotalには今年の売上額が入っていることになるのか。これをメールで送れば完璧や!」

 

プログラムを書いてみる【メールで送信したい】

f:id:pakamori:20191114170624j:plain

わし「さっきの売上合計をだす処理の下にメールを送信する処理を書いてみた。」

MailApp.sendEmailの中に宛先、タイトル、本文を指定してメールを送信する仕組みを作っていきます。

わし「さっきuriageTotalに合計を入れるようにしたから、これを本文に指定してあげると良さそう。実際には合計額に置き換わってメールが送信されると思う。」

 

実行してみる。

わし「これで完成!試しに部長アドレスの部分を自分のアドレスにして実行してみる。これで自分にメールが飛んでくるはず。」

わし「実行は上にある三角ボタン。(ポチ)」

わし「......メール来てるかな。」

f:id:pakamori:20191114171746j:plain

わし「キタ━(゚∀゚)━!これで毎年貰った金額をシートにコピペして、三角ボタンで実行すればメールが飛ぶようになったわけだ!」

部長「あ、さっきのシート、別にメールで報告しなくてもよかったわ。代わりにWordで売上報告書を作成して共有してくれ。」

わし「辞めてぇ。」

 

一応気を付けてほしいこと 

わし「メールアドレスの指定などを間違えると、内容によっては個人情報流にもつながるので、まずどうでもいいデータで試したり、個人用のシステムを作ってみるほうがいいかもしれない。」

 

まとめ

今回は事務作業等で活躍する言語、GAS(Google Apps Script)を紹介しました。ExcelVBAと似たような機能です。メール送信以外にも、仕事管理ツール、自動でシートの書き込み、ちょっとしたWEBアプリ開発、他のツールとの連携など、アイデア次第で使い方は無限大です。Googleに登録しているだけで手軽に使える機能なので、気になった方は一度お試しあれ。自分なりの業務効率化ツールを作ってみてはいかがでしょうか。

 

参考にしたい本とか記事とか

【書籍】

GASはJavaScriptベースの言語なので、覚えておくとJavaScriptを書く場合にも応用が利きます。


GASから始めるプログラミング入門書としてもおすすめ!

そもそもスプレッドシートとは?という方へ。

 

【記事】

GASの基本。わしの記事より100倍分かりやすいので目を通してみて下さい。

stress-hack.fun

身に着けるとこんなことまで出来るよという例。

qiita.com

qiita.com