【GAS】定刻にGmailを自動発信するプログラムを作る

Python・GAS
ワタシ

ども、らーにゃです。今回はGASの活用についてまとめます。

身の回りのことをもっと自動化できないものか?

仕事でもプライベートでも忙しくなるほどに自動化の必要性・重要性は増していると思います。

例えばメールを一つとっても、下記のようなサービスを使って指定時間になったら自動送信するなど、色々と出来ることはあります。

■ご参考リンク(IFTTTを使った自動化)

ただ、この手のサービスは使い勝手がいいものの、フリーミアム(一部無料、全て使うのは有料)になる流れがあったりもします。

そのため考えたいことは。

『てか、自分自身で作れないものか?』

こんなことを考えたりすることもしばしばです。

しかし、その一方で

『自分はエンジニアじゃないし、そんな知識ないからなぁ…』

との想いもあります。

ただ、最近GAS(Google Apps Script)をダメもとでさわっていじってみると

『ど素人でもコピペさえできれば近いことできるじゃん!』

と思えてきたので

備忘録的に初心者でも使える小ネタをガンガン発信したいと思います。

自動化やGASのプログラミングに興味があるけど、どんなことなら出来るのか…と思っている初心者の方のご参考になれば幸いです。

今回の論点整理

今回取り扱うのはGmailを扱ったメールの自動送信のプログラムになります。

具体的には下記のように定時になったら自分宛にメールをするプログラムを作っています。

私の場合は、宛先を自分にしていますが、下記紹介するプログラムの宛先を変えれば、指定アドレス宛も当然できます

ではこれをどう実装するか?そして拡張するか?ここについて触れていきたいと思います。

具体的には下記の3点について触れていきます。

今回の論点
  • GASとは何か
  • 自動メール発信の仕組
  • 自作プログラムへの拡張

順に触れていきます。

結論だけ知りたい場合は2のトコのみご参照くださいませ(-_-)

Google Data Portalの活用ポイント

GASの活用観点

GASとは何か

GASとはGoogle Apps Scriptの省略後で、Googleが開発・提供しているプログラミング言語です。

JavaScriptというWebブラウザ上で動作するプログラミング言語がベースになっています。

このJavaScriptは、Webサービスを作ろうと思ったときに絶対に避けては通れない、ポピュラーな言語であり、そのニーズは非常に高いです。

■ご参考リンク(java scriptの高まり)

この点、JavaScriptのニーズの高まりに反して、学習コストが低いこともGASのメリットです。

例えば下記の3点は個人的に魅力的な観点だと思います。

  • Googleアカウントがあればすぐ使える
  • 環境構築がいらない(サーバーで動く)
  • ネットにアクセス出来ればそれでOK!

そのため、プログラミングを何から手をつけるべきかということを考える私のようなど素人が最もコスパ良いです。

では実際に、どのような活用法があるのかを考えます。

GASの活用

GASの活用観点は大きく2点あると考えます。

  • Google Appsに連携したアプリを作る
  • 外部アプリと連携(API・バッチ処理等)したアプリを作る

この2点がまずはベースです。特に

「GoogleのだからどうせGoogleのしかできないでしょ」

と思うことなかれ、今回紹介するツイッターとの連携含め、例えばLINEでの自動のBot創りなど、幅は非常に広いです。

ただ、当然、Googleのツールの機能を拡張という点においては最強です。

たとえば以下のようなことです。

  • メールを定時に自動送信・返信
  • スプレッドシートでオリジナル関数を作成し実行する
  • 住所からGoogle MapのURLを作成してマッピングする

などなど、Google Appsは種類が多いので、その組み合わせを考えると無限大です。

そして個人的に一番のオススメポイントが”ウェブ上で自動更新プログラムが作れる”という点です。

正直、これの破壊力が半端ないです。昨今叫ばれる、RPA・業務自動化の文脈でかなりのことが出来るようになります。

■ご参考リンク(RPA業務自動化とは)

この点、今までかじっていたPythonなどよりも拡張性は劣るものの

サーバーでの自動実行と学習コストの低さを考えると格段に準備がしやすいです。

そのため、

『こんな自動化・効率化の仕組を作ってみたい!』

という初心者の人の最初の第一歩はGAS一択かなと思います。

ワタシ

初心者でも自動化のプログラムが組めるというのは夢がありますね。

自動メール発信の仕組

今回は、上記を踏まえて、GASを利用してGmailと連携したアプリを作成します。

アウトプットのイメージとして、下記のようにメールを自動送信(受信)するものです。

基本的にこの内容はいくらでも拡張できるので、ベースになるプログラムを抑えてしまいましょう。

プログラムのコード

結論としては、下記コードをコピペして少し修正すればそれで完了です。

function RemindMail() {
  const recipent = 'ここに送りたい連絡先を入力';
  const subject = 'ここにメールタイトルを入力';

 //メールの本文 ※\nは行替え
  let body = ' ';
  body += 'ここに送りたい文面をいれます\n';
  body += 'ここに送りたい文面をいれます\n';
  body += 'ここに送りたい文面をいれます';

 //送付元の表示
  const options = {
    name: 'GASからの送信'
  };

  GmailApp.sendEmail(recipent, subject, body, options);
}

上記をコピペしていただいた上で変更する点は3点のみです。

修正する箇所
  1. 「ここに送りたい連絡先を入力」に部分に送付アドレスをいれる
  2. 「ここにメールタイトルを入力」にメールのタイトルをいれる
  3. 「ここに送りたい文面をいれます」に入れたい文面内容を入れる

※尚、行替えが不要であれば、2つ目3つ目の文章はなくしてよいです。

この利活用は恐らく、もっともポピュラーです。調べると色々なサイトで解説やコードが公開されています。

コード自体はこれで完成です。

ワタシ

予備知識なくとも驚く程簡単にできちゃいました。

プログラムの実行

あとはこれを実際に動くか試して、良い感じであれば繰り返しをするのみです。

具体的には下記の保存マークを押した後「▷実行」マークをクリックしてみてください。

これでエラーがでなければ、自動送信がなされます

途中Googleのアカウントを確認する画面に推移しますが、ここは気にせず進めていきましょう。

「権限を確認」をクリックすると「このアプリは確認されていません」と警告が出てきてビビりますが問題ないです。

冷静に、左下の詳細をクリックして○○に移動をクリックしましょう。

この画面ではじめてGmail利用の承認ができるので、許可をしておきましょう。

ここまで出来たらほぼ完了です。

あとはこれを毎日、起動するようにします。

今度は左側にある時計ボタンをクリックし、毎日更新される設定にうつります。

詳細は以下の通りです。

トリガーを作成というボタンを押した後

『時間主導型』、『日付ベースのタイマー』、『好きな時間帯』を選択します。

ここまで設定して完成です。これで毎日、プログラムが指定時間に実行ボタンを押してくれる設定になりました。

コードの記載を含めコピペすれば3分くらいで終わる作業かと思います。

ここまで実際にやってコードも理解できれば自動化・効率化の拡張性が色々見えると思います。

以上です。

ツマ

定例的な作業などは全部こういうプログラムに置き換えたいね

まとめ

今回ポイントしてまとめてきたのは以下の3点です。

抑えたいポイント
  • GASとは
    ▷初心者が自動化・効率化のプログラムを目指すのに最適なGoogleの言語
  • 自動メール発信の仕組
    ▷基本コピペでGmailの自動送信のプログラムが出来る。

以上です。

今回は一例を出しましたが、GASを扱うことが出来ると、効率化・自動化をさせることは無限大です。

そしてこのGASの何と言っても素晴らしいのが環境不要!そしてしかもタダ!ということです。

仕事でつかえる部分があるのは勿論のこと、プライベートでも利活用できるオトク技がいっぱいなため、非エンジニアの人でもぜひトライしてみてください!

とにかく私のような初心者の人が手軽に試して面白い!と感じて飽きる前に習慣化できるように、今まで作ったコードは公開していくのでコピペして利用・参考にして下さい。

自身の今のスキルや状況に応じて、次のステップアップに向けた動きを付けて一緒に自動化・効率化の技術を上げていきましょう!(‘ω’)ノ

>>Udemy:GASのおすすめ講座

ご精読頂きありがとうございました!
m(_ _)m