Google Apps Script 入門 スプレッドシートから自動でメールを送信する

スポンサーリンク
スポンサーリンク

スプレッドシートから自動でメールを送信

スプレッドシートに
メールアドレス
件名
メッセージを
入力しておくことにより
設定した日時に自動でメールを送信することができます。

スプレットシートの1行目は項目行とします。

  • A列は名前
  • B列はメールアドレス
  • C列は件名
  • D列はメッセージ
  • E列は送信確認

実行例

項目を入力



内容を入力



スクリプトエディタにコードを記述して
プログラムの実行タイミングをトリガーします。




メールの送信が済んだら送信確認列に送信済みと表示されるので
再度送信する場合は送信済みの文字列を削除する


自動でメールを送信するコード

function sendEmails() {
  var sheet = SpreadsheetApp.getActiveSheet();
  var EMAIL_SENT = "送信済み";
  var startRow = 2;
  var numRows = 3;   // データの行数 データ量によって変更
  var dataRange = sheet.getRange(startRow, 2, numRows, 5)
  var data = dataRange.getValues();
 for (var i = 0; i < data.length; ++i) {
  var row = data[i];
  var emailAddress = row[0];  //B列
  var message = row[2];       //D列
  var emailSent = row[3];     //E列
  if (emailSent != EMAIL_SENT) {  
      var subject = row[1];//C列
      MailApp.sendEmail(emailAddress, subject, message);
      sheet.getRange(startRow + i, 5).setValue(EMAIL_SENT);
      SpreadsheetApp.flush();
    }
  }
}

コードの解説

2行目は
sheet変数を作成してスプレッドシートアプリケーションの
アクティブシートを格納しています。


3行目は
EMAIL_SENT変数を作成して
文字列の”送信済み”を格納しています。


4行目は
startRow変数を作成して
項目を除いたデータの先頭2行目の2を格納しています。


5行目は
numRows変数を作成して項目行を除いたデータの行数を
格納しています。メール送信先のデータ量によって増減してください。


6行目は
dataRange変数を作成して、項目行を除くデータの範囲を格納しています。


7行目は
data変数を作成して、getValues(ゲットバリューズ)メソッドで
変数dataRangeの値を取得して格納しています。


8行目は
For文で繰り返し処理の始まりです。
0からdata.length(データレングス)データの長さ すなわち データの個数回
繰り返し処理をします。


9行目は
row変数を作成して、変数dataを配列に格納して
row変数の格納します。


10行目は
変数emailAddressを作成し、row配列の1番目の値
すなわち、メールアドレスを格納します、


11行目は
変数messageを作成し、row配列の3番目の値
すなわち、メッセージを格納します。


12行目は
変数emailSentを作成し、row配列の4番目の値
すなわち、”送信済み”の文字列があれば格納します。


13行目は
if文で条件分岐しています。
比較演算子!=(等しくない)で変数emailSentに
文字列の”送信済み”が格納されていなかったら
すなわち、メール送信がされていなかったら
以下の処理を実行する条件分岐をしています。


14行目は
変数subjectを作成してrow配列の2番目の件名を
取得して格納しています。


15行目は
sendEmailメソッドでメールを送信しています。


16行目は
送信が済んだメール行の5列目に”送信済み”と
文字列を代入しています。


17行目
SpreadsheetApp.flush();メソッドで
スプレッドシートの変更を確定しています。


以上で、スプレッドシートから自動でメールを送信するコードの解説を終了します。
ありがとうございました。

スポンサーリンク
スポンサーリンク

フォローする

スポンサーリンク
スポンサーリンク