みなさん、こんにちは!
タカハシ(@ntakahashi0505)です。
さて、Google Apps Script(略称GAS)ですが、今回はメールマガジンを送るシステムを作りたいと思います。
スプレッドシートのリストしている宛先に、ドキュメントに作成した本文をテンプレとして、Gmailでメール送信するのです。
メルマガシステム、GASなら無料で作れちゃいます。
いやー、すごいっすね…!
シリーズ初回の今回は、基本中の基本。Google Apps ScriptでGmailを操作してメールを送る方法です。
ちなみにですが、すごく簡単です。
どうぞよろしくお願いいたします!
スプレッドシートからプロジェクトを作成する
まず新規のスプレッドシートを作りましょう。
メールを送るだけならスプレッドシートはいらないのですが、追々作成するメルマガシステムはスプレッドシートから呼び出しますので。
「ツール」→「スクリプトエディタ」でスクリプトエディタを開きます。
今回はスクリプト名を「メールテスト」、ファイル名「main.gs」、関数名を「mailTest」としました。
Gmailでメールを送るスクリプト
スクリプトエディタで以下スクリプトを入力しましょう。
function mailTest() { const recipient = 'hogehoge@example.com'; //送信先のメールアドレス const subject = 'Google Apps Scriptによるメール送信テスト'; const recipientCompany = '株式会社Hogehoge'; const recipientName = '山田太郎'; const body = `${recipientCompany}n${recipientName}様nテストメールをお送りいたします!`; const options = {name: 'いつも隣にITのお仕事'}; GmailApp.sendEmail(recipient, subject, body, options); }
定数recipientのメールアドレスは皆さんが使用されているアドレスに変更してくださいね。
sendEmailメソッドでメールを送る
Gmailを操作してメールを送る場合は、GmailAppのsendEmailメソッドを使用します。
構文はこちらです。
GmailAppはGmailのアプリケーションを指していて、それに対してsendEmailメソッドに指定した、宛先アドレス、件名、本文の内容でメールを送信します。
オプションには以下のプロパティをメンバーとするオブジェクトを指定できます。
プロパティ | 説明 |
---|---|
cc | CCに含めるメールアドレスをカンマ区切りで列挙した文字列 |
bcc | BCCに含めるメールアドレスをカンマ区切りで列挙した文字列 |
name | 送信者名(デフォルトはユーザー名) |
noReply | 返信不可とするかどうかを表すブール値(送信元が例えばnoReply@example.comとなる) |
replyTo | 返信時に返信先となるメールアドレス |
今回の例では、nameプロパティのみを指定していて、送信者名が「いつも隣にITのお仕事」となります。
オブジェクトを組む際、波かっことか、カンマとかコロンとかセミコロンとか、ちょっとややこしいですが、間違えないようにして下さいね。
Gmailでメールを送るスクリプトを実行する
では、実行してみましょう。
最初の実行時には以下のようにGmailの操作に関する承認を求められますので、「許可を確認」から承認作業をポンポンと進めてくださいね。
無事に承認が完了すると、送信先の受信ボックスに以下のようなメールが送られます。
件名、本文、送信者名ともに、ちゃんと反映されていますね。
GASによるメールの送信、簡単です。
まとめ
以上、Google Apps ScriptでGmailを操作してメールを送る方法でした。
簡単ですね!出だしは順調です。
あまりにも簡単なので、私なんか最初に試したときは疑ってしまいました。
さて、次回はじゃんじゃん先に進めまして、Google Apps Scriptからドキュメントを取得する方法についてお伝えしたいと思います。
どうぞお楽しみに!