Google スプレッドシートと Google Apps Script で Gmail から自動リマインダーメールを送信

Table of Contents

はじめに

Gmailからスケジュールされた自動マインダーを送信する方法です.Google Apps Sciprt のコードを用意し,スプレッドシートにメールアドレスと送信時間等を入力しておくと,自動送信されるようになります.こちらの記事を参考にさせて頂きました.

スプレッドシートとGoogle Apps Script の用意

  • Google スプレッドシートで新しいシートを用意(シートの追加)します
  • ツール → スクリプトエディタ をクリックします
  • こちらのAutoMailing.gs コードをコピペします
  • このコードの3行目(以下)にある,シート1の部分を作成したシートの名称に書き換えます
function AutoReminder() {
  var sheet = SpreadsheetApp.getActive().getSheetByName('シート1'); // 使用するシートを取得
  • このコードの35行目にある,シート1の部分を作成したシートの名称に書き換えます
function sendMails() {
var sheet = SpreadsheetApp.getActive().getSheetByName('シート1'); // 使用するシートを取得
  • このコードの51行目あたりにある,from: のメールアドレスはGoogle スプレッドシートにログインしているメールアドレスと同一とします.そうしないとこちらにあるような 無効な引数です のエラーとなりました.さらにうまくいかないときはこちらが参考になるかもしれません.
      option  =  {
        from: '<your-login-address>', // 送信元メールアドレスを設定
        name: 'Auto Reminder System' // 表示される送信者を設定       
  • コードを保存します

シートに配信メール情報を入力

スプレッドシートの用意したシートに戻り,1行に一つのメールの情報を以下のように入力します.ただし,1行目は以下のようなヘッダー行で,項目名は任意ですが,各カラムの機能はこの表と同一(第1カラムは送信先メールアドレス等)である必要があります.

アドレス 宛名 件名 本文 送信時間 送信ステータス
allmem@mail-address 研究室全員 PRS today This is an automated reminder 2020/06/29 9:00:00
allmem@mail-address 研究室全員 PRS today This is an automated reminder 2020/07/02 12:00:00

実行

2021.1.5追記: アップデートに伴い,操作が若干変わっています.
ツールスクリプトエディタ をクリックし,実行 をクリックします.ただし,左メニューで コード.gs が選択されており,デバッグボタン 右で 対象の関数 AutoReminder が選択されている必要があります.シートの 送信ステータスScheduled になれば成功です.

以下は古い記述です
スクリプトおよびシートの準備ができたら,実行します.
「ツール」 → 「スクリプトエディタ」 をクリックし,「実行」 → 「関数を実行」 → 「AutoReminder」 をクリックすると送信予約が実行され,上の送信ステータスに Scheduled が入力されます.
送信対象の確認は,「ツール」 → 「スクリプトエディタ」 → 「編集」 → 「現在のプロジェクトのトリガー」 で確認できます.
スプレッドシートを更新する度にこれらを実行します.現在時刻より古い送信時間の行は無視されます.

注意

「このスクリプトに含まれているトリガーの数が多すぎます」といったエラーを避けるため,こちらに従い,適宜,「ツール」 → 「スクリプトエディタ」 → 「実行」 → 「関数を実行」 → 「cleanAllTriggers」をクリックしてトリガーを消去します.トリガーは20個までで,自動的には消えませんので,終わったものは適宜
消去するようにします.

Google スプレッドシートと Google Apps Script で Gmail から自動リマインダーメールを送信” に対して2件のコメントがあります。

  1. 池田 博之 より:

    東京大学様

    私、社会人をしております池田と申します。
    本件、ブログを参考にこのScriptを利用して業務の効率化ができないか考えております。
    このメールに添付ファイル(写真5~10枚程度)を添付することは可能でしょうか??
    添付ファイルも可能であればご教示頂きたく存じます。

    お忙しいところ、恐れ入りますがご確認よろしくお願い致します。

    1. jsasaki より:

      佐々木です.やったことがなく分かりませんが,こちらの記事によればできるのかもしれません.お役に立てずすみません.

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください