【初心者向けのGAS】Google Apps Scriptでメールを送信する方法【メルマガ機能に応用可】
- 2019.09.08
- Google Apps Script
よこのじ(@yokonoji_work)です。
Google Apps Script(GAS)で「Google Apps Scriptでメールを送信する方法」をご紹介します。
メール送信を覚えれば、Google Apps Script(GAS)が実行した処理の結果をメールに通知したり、スプレッドシートと組み合わせてメルマガシステムを作ることが可能です。
それでは、実装方法を見てみましょう。
Google Apps Scriptでメールを送信する方法
メールを送信するには、sendEmailメソッドを使用します。これはMailAppクラスで用意されているメソッドになります。
MailApp.sendEmail("[email protected]", "件名", "本文");
このように、宛先のメールアドレス、件名、本文を指定してあげるだけでメールを送信することができます。とても簡単ですね。
gmailだけでなく、hotmailやicloudのメールアドレスへの送信ももちろん可能です。
複数の宛先を指定したい場合は、次のように記述します。
// 配列を使用する場合 to_lists = ["[email protected]", "[email protected]"]; MailApp.sendEmail(to_lists, "件名", "本文"); // カンマ区切りを使用する場合 to_lists = "[email protected], [email protected]"; MailApp.sendEmail(to_lists, "件名", "本文");
複数のメールアドレスに送信できるのは良いのですが、GASを使ったメール送信には1日あたりの送信数に制限がありますので、注意が必要です。
「Quotas for Google Services」にあるように、通常のアカウントの場合は100通までとなります。Gsuite Basic以上の場合は1500通です。
ここでの1通とは、宛先の数になります。例えば、上記のように2つのメールアドレスを配列で指定して送信した場合は2通を送信ことになります。同じ内容を続けて送っても、再度2通送信したことになります。
なお、次のようにgetRemainingDailyQuotaメソッドを使って残りの送信可能数を確認することができます。
var emailQuotaRemaining = MailApp.getRemainingDailyQuota(); Logger.log(emailQuotaRemaining);
GASのメール送信オプション
上記の使用方法では、用途によっては不都合があるかと思います。
例えば、メルマガ読者にメールを送信する場合、複数のアドレスに一斉送信する場合はbccを利用すべきですし、返信先はアカウントのgmailではなくて他のメールアドレスを指定したい場合もあるかと思います。
そんなときは、オプションを利用してください。
- to, cc, bcc・・・送信先メールアドレス
- name・・・送信者名の指定(デフォルトはユーザー名)
- replyTo・・・返信先アドレスを指定する(デフォルトはGAS利用アカウントのメールアドレス)
- subject・・・件名
- body・・・本文
- htmlBody・・・htmlタグで装飾した内容を送信できる。デバイスがhtml表示に対応していない場合はbodyで指定した内容が表示される。
- inlineImages・・・htmlBodyを利用する場合に、本文に画像を埋め込むことができる。
- attachments・・・メールに添付するファイルを指定する。
- noReply・・・受信者が返信をできないようにno-replyアドレスから送信する。Gsuiteアカウントでのみ利用可能。
例えば、このように記述することができます。
MailApp.sendEmail({ bcc: "[email protected], [email protected]", name: "よこのじ", subject: "メールの件名", body: "本文\nこれは本文です", htmlBody: "<b>本文</b><br>これは本文です", replyTo: "[email protected]", });
この例では、bccに2つのメールアドレスを指定し、差出人には「よこのじ」を指定しています。また、htmlを利用して本文を太字にしています。このメールはgmailから送信したものですが、返信する場合は「[email protected]」が返信先のアドレスとなります。
ここまでの内容でメール送信できるようになりましたので、「【初心者向けのGAS】スプレッドシートの範囲指定したセルから値を取得する方法」を参考にスプレッドシートで管理しているメールアドレスを取得するなどすれば、簡易的なメルマガシステムとして利用できそうですね。
Google Apps Script(GAS)はちょっとした簡易システムを素早く作るのには適していますね!
- 前の記事
【初心者向けのGAS】スプレッドシートにダイアログ メッセージをポップアップ表示する方法 2019.08.05
- 次の記事
記事がありません