一件一件メールを送るのが面倒、いや、もはやGmailを開くのすら面倒!
そんな方に必見! 定期配信のメルマガ機能を簡単に作り、スプレッドシートで送信まで全て管理ことができます。コロナで家にいる時が多い方にちょうど良い動画にしているので、ぜひご覧ください。
動画:https://youtu.be/8_VPGlJvxnE
コード.js
function email(){
let opt = new Object();
let name = "";
let emailAddress = "";
let times = "";
let message = "";
const MES_SHEET = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("メール本文");
const MES_DATA = MES_SHEET.getRange(1, 1, 2, 2).getValues();
const mailTitle = MES_DATA[0][0];
const mailMes = MES_DATA[1][0];
// スプレットシートからデータを引き出す
const SHEET_1 = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("フォームの回答 1");
const numColumn = SHEET_1.getLastColumn(); // 最後列の列番号を取得
const numRow = SHEET_1.getLastRow()-1; // 最後行の行番号を取得
const dataRange = SHEET_1.getRange(2, 1, numRow, numColumn);
let data = dataRange.getValues();
// 一人一人、情報を見ていく処理
for(i in data){
name = data[i][0];
emailAddress = data[i][1];
times = data[i][2];
message = `${name}様<br><br>${mailMes}`; // 本文
message = message.replace(/\n/g, "<br>"); // スプレッドシートから取ってくる改行は\nでメールで使えないので、<br>に変更
opt.htmlBody = message; // optに本文を格納(改行とかしたいため)
// メール送信処理(まだ一度もメールを送っていなければ送信)
if(!times){
MailApp.sendEmail(emailAddress, mailTitle, "", opt);
data[i][2] = times + 1;
}
}
dataRange.setValues(data);
}
menu.js
function onOpen() {
const UI = SpreadsheetApp.getUi();
let menu = UI.createMenu('メール送信');
menu.addItem('新規顧客', 'email');
menu.addToUi();
}