GAS スプレッドシートからGmailの下書きを作成

GAS(Google Apps Script)のスプレッドシートからGmailの下書きを作成するサンプルです。

目次

サンプル Googleスプレッドシートを準備する
  スプレッドシートから値を取得しGmailの下書きを作成する
  値をコードに直接設定する場合

Googleスプレッドシートを準備する

1.Googleスプレッドシートを新規作成しメール送信に必要な情報を設定します。

宛先とccの宛先はそれぞれ2件にしています。

 

2.コードを作成するのでApps Scriptを開きます。

Google スプレッドシートの拡張機能からApps Scriptをクリックします。

 

スプレッドシートから値を取得しGmailの下書きを作成する

function myFunction() {

  const sheet = SpreadsheetApp.getActiveSheet();

  const address = sheet.getRange('B3').getValues(); // 送信者
  const subject = sheet.getRange('B5').getValues();
  const body = sheet.getRange('B6').getValues();
  const ccAddress1 = sheet.getRange('B4').getValues();

  const ccAddress2 = new Object();
  ccAddress2["cc"] = ccAddress1[0][0];

  GmailApp.createDraft(address,subject,body,ccAddress2);
}

GmailApp.createDraftの構文は以下です。

GmailApp.createDraft(宛先アドレス, 件名, 本文, [,オプション(ccアドレス他)])

10,11行目は、引数のオプションはオブジェクトのため、オブジェクトを作成し値をセットしています。

https://developers.google.com/apps-script/reference/gmail/gmail-app

https://support.google.com/mail/answer/7190?hl=ja

実行結果は以下になります。

 

値をコードに直接設定する場合

スプレッドシートからではなくコードに直接文字列を入れた場合です。

function myFunction() {
  const address = "test1@gmail.com,test2@gmai.com"; // 送信者
  const subject = "テストタイトル";
  const body = "本文のテストです。\r\n改行あり。";
  const ccAddress ={
    cc: "ccTest1@gmail.com,ccTest2@gmail.com"
  };

  GmailApp.createDraft(address,subject,body,ccAddress);
}

関連の記事

GAS substring 文字列を切り出す(Google Apps Script)

△上に戻る