GASを使えばGmailでのメール送信を自動化・効率化することが可能です。
この記事では「GASでメール送信する方法」を、サンプルコード付きでわかりやすく解説します。
複数宛先に送信する方法や、CC/BCCで送信する方法、添付ファイルを送る方法についても解説するので、この記事を読めばGASを使ったメール送信の基本をマスター可能です。
GASの、メール送信機能を使いこなしたい人はぜひ参考にしてください。
GASでメールを送信する方法
GASでメールを送信するには、GmailAppクラスのsendEmail関数を使います。
sendEmail関数は以下4つの値を渡すことで、簡単にGmail経由でメール送信が可能な関数です。
- 送信先
- 件名
- 本文
- オプション
渡し値の順番や、オプションで設定する変数含め、詳しく解説します。
GmailApp.sendEmailの使い方
GmailApp.sendEmail(送信先アドレス, 件名, 本文, オプション);
いきなり結論ですが、GASのスクリプトに上記のコードを記述することでメールを送信できます。
4つの変数を関数に渡すだけでメールが送信できるなんて…、GASの強みは実装の容易さというのがよくわかる例ですね。
変数は「,(カンマ)区切り」で渡しましょう。
GmailApp.sendEmailのパラメーター
GmailApp.sendEmailメソッドを使うときは、以下4つのパラメータを渡してください。
オプションに関しては任意ですが、その他のパラメーターは必ず入れるようにしましょう。
件名や本文のないメールを送る人なんていないでしょうし、宛先がないと誰にも送れません。
送信先 | 送信先アドレス(文字列) |
---|---|
件名 | メール件名(文字列) |
本文 | メール本文(文字列) |
オプション | その他の項目(連想配列) |
GmailApp.sendEmailのオプション
GmailApp.sendEmail(送信先アドレス, 件名, 本文, {
"attachments" : 添付ファイル,
"cc" : ccアドレス,
"bcc" : bccアドレス,
"replyTo" : 返信先アドレス,
"noReply" : 返信不可フラグ,
"name" : 送信者の名前
});
GmailApp.sendEmailでは、以下6種類のオプションを指定できます。
添付ファイルやCC/BCC、返信に関する設定、送信者の名前などを設定したい人はオプションを活用しましょう。
具体的なサンプルコードは後ほど紹介します。
attachments | 添付ファイル |
---|---|
cc | ccアドレス |
bcc | bccアドレス |
replyTo | 返信先アドレス |
noReply | 返信不可を判別するbool値を指定 |
name | 送信者の名前 |
GmailApp.sendEmailのサンプルコード
function gas_sendmail(){
//パラメータの定義
var To = "sample@monoblog.jp";
var Subject = "テスト件名";
var Body = "テスト本文";
//オプションの定義
var Options = {
"attachments" : 添付ファイル,
"cc" : ccアドレス,
"bcc" : bccアドレス,
"replyTo" : 返信先アドレス,
"noReply" : 返信不可フラグ,
"name" : 送信者の名前
};
//送信実行
GmailApp.sendEmail(To, Subject, Body, Options);
}
まとめると、GASでメール送信するためのサンプルコードは上記のようになります。
上記はそのままコピペできるので、自分なりにアレンジして活用してください。
GASでCC/BCCにメール送信する方法
function gas_sendmail(){
//パラメータの定義
var To = "sample@monoblog.jp";
var Subject = "テスト件名";
var Body = "テスト本文";
//オプションの定義
var Options = {
"cc" : "cc_sample@monoblog.jp",
"bcc" : "bcc_sample@monoblog.jp"
};
//送信実行
GmailApp.sendEmail(To, Subject, Body, Options);
}
GASでCC/BCCにメール送信するには、オプションパラメータを使います。
オプションは連想配列なので、{}で囲い、アドレスは文字列で渡すようにしましょう。
GASで複数宛先にメール送信する方法
function gas_sendmail(){
//パラメータの定義
var To = "sample01@monoblog.jp,sample02@monoblog.jp,sample03@monoblog.jp";
var Subject = "テスト件名";
var Body = "テスト本文";
//オプションの定義
var Options = {
"attachments" : 添付ファイル,
"cc" : "cc_sample01@monoblog.jp,cc_sample02@monoblog.jp,cc_sample03@monoblog.jp",
"bcc" : "bcc_sample01@monoblog.jp,bcc_sample02@monoblog.jp,bcc_sample03@monoblog.jp",
"replyTo" : 返信先アドレス,
"noReply" : 返信不可フラグ,
"name" : 送信者の名前
};
//送信実行
GmailApp.sendEmail(To, Subject, Body, Options);
}
GASで複数宛先にメール送信するには、上記のように「,(カンマ)区切り」で複数のアドレスを指定してください。データ型は文字列です。
CC/BCCもToと同様に、文字列でカンマ区切りの複数アドレスを指定すれば、複数宛先に送信できます。
GASで添付ファイルを付けてメール送信する方法
function gas_sendmail(){
//パラメータの定義
var To = "sample@monoblog.jp";
var Subject = "テスト件名";
var Body = "テスト本文";
//添付ファイルの定義
var attachments = DriveApp.getFileById(ファイルID).getBlob();
//オプションの定義
var Options = {
"attachments" : 添付ファイル
};
//送信実行
GmailApp.sendEmail(To, Subject, Body, Options);
}
GASで添付ファイルを送信するには、DriveAppクラスのgetFileByIdメソッドで取得したFileオブジェクトに対してgetBlobメソッドを使います。
そのためにはアクセス権限のあるGoogle Driveに添付ファイルしたいファイルが格納されている必要があるので、手動で置いておくか格納・もしくはスクリプト上でFileオブジェクトを保持する用意をしておきましょう。
GASで添付ファイル付きメールを送信する方法
- GoogleDriveに添付ファイルを格納
- getBlobで添付ファイルのオブジェクトを生成
- オプションのattachmentsに添付ファイルを格納
- メール送信
まとめ
今回は「GASでメールを送信する方法」について解説しました。
GASでメール送信するのは以外に簡単でしたね。送信アドレスや件名、本文を上手く編集できるようにすれば、かなり柔軟にメールの作成・送信を自動化できます。
GASのメール送信機能を上手く使いこなして、業務効率化やツール作成に役立ててください。
では、また。