目的
サークルの新歓に向けて、新入会者をGooglegroupに自動追加するものを作りたい。
方法
- Googleフォームでgmailのアドレスを入力してもらう。
- フォームの回答をスプシにエクスポート
- GASを用いて、スプシからgmailのデータを取り出す。
- 取り出したアドレス宛にグループの招待のURLを送る。(メッセージ付き)なお、送るのはグループにまだ参加してない人のみ
妥協したこと
代替案 :スプシに送信ボタンを作りボタンを押すことで実行するようにした。
結果
フォーム
スプシ
コード
function inviteMember() {
// 送信者情報
const senderEmail = ""; // 実際の送信者メールアドレス
// Google スプレッドシートのシートを取得
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
// メンバー登録を行う列のデータを取得
var data = sheet.getDataRange().getValues();
// グループ情報
const groupName = "グループ名";
// メッセージ
const subject = "メール件名";
const message = `
**${groupName}への招待**
${groupName}へようこそ!
このグループは、〜に関する情報を共有するためのものです。
グループに参加するには、以下のリンクをクリックしてください。
https://groups.google.com/forum/subscribe?token="グループのトークン"
//groupの招待メールのurlをコピーした。
**ご質問**
ご質問は、${senderEmail}までご連絡ください。
よろしくお願いいたします。
**${groupName}運営**
`;
// 最初の行をヘッダーとして扱うから、1 から始める。
for (var i = 1; i < data.length; i++) {
var emailAddress = data[i][5];
var already = data[i][8];
// メール送信
if (already == false) {
MailApp.sendEmail(emailAddress, subject, message, {
from: senderEmail,
bcc: senderEmail,
});
}
}
}
参考文献