Google Apps Scriptを使用して自動でメールを送信してみます。
■PC環境
Windows10
■メールアドレスなどを記入したスプレッドシート
Google Apps Scriptを使用して自動でメールを送信してみますが、まずはメールアドレスなどを記入したスプレッドシートを用意します。
今回は、上記の「メールアドレス」、「件名」、「メール本文」が記載されたスプレッドシートを作成しました。
■スクリプトエディタを開き、プログラムを作成する。
自動でメールを送信するために、メールアドレスなどを記入したスプレッドシートを用意できましたので、スプレッドシートの上部メニューから「ツール」をクリックします。
クリックすると、プルダウンメニューが表示されますので「スクリプトエディタ」をクリックします。
クリックすると、スクリプトエディタが開きますので、プログラムを作成していきます。
■コード
function sendautomail(){ var sh = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet(); var lrow =sh.getLastRow(); for(var i=2;i<=lrow;i++) { MailApp.sendEmail(sh.getRange(i, 1).getValue(), sh.getRange(i, 2).getValue(), sh.getRange(i, 3).getValue()) } }
sendautomailという関数を定義し、shという変数を作成し、SpreadsheetApp.getActiveSpreadsheet().getActiveSheet()関数で、作成したGoogleスプレッドシート上で、アクティブなスプレッドシートと、アクティブなシートを取得できるようにします。
次にlrowという変数を作成し、sh.getLastRow()関数で作成したGoogleスプレッドシートの最終行を取得できるようにします。
for文を使い、作成したGoogleスプレッドシート(sh)でgetRange()関数により行番号、列番号を指定し、getValue()関数でセルの値を最終行まで取得する処理を行います。
取得したものを、MailApp.sendEmail()関数を使って、メールを送信します。
■実行・検証
今回のプログラムがちゃんと実行できるか検証を行います。
スクリプトエディタの上部に三角のボタンがありますので、こちらをクリックします。
クリックすると、「保存」というウインドウが表示されます。「You must save your project before you can run it. Save now?(プロジェクトを実行する前に、プロジェクトを保存する必要があります。今すぐ保存?)」と質問されますので、「はい」ボタンをクリックします。
クリックすると、「Edit Project Name(プロジェクト名の編集)」というウインドウが表示されますので、「Enter new project name(新しいプロジェクト名を入力してください)」と表示されている入力欄にプロジェクト名を記入します。今回は「無題のプロジェクト」とします。
入力後、「OK」ボタンをクリックします。これでプロジェクトが保存されます。
保存後、再度三角のボタンをクリックします。
クリックすると、「Authorization required(認証が必要です)」というウインドウが表示されます。今回のプロジェクトには、「needs your permission to access your data on Google.(Googleのデータにアクセスするには、許可が必要です。)」と書かれていますので、「許可を確認」ボタンをクリックします。
クリックすると、「Googleにログイン」というウインドウが表示されます。「アカウントの選択」と表示されていますので、現在お使いのGoogleアカウントを選択します。
選択すると、「このアプリは確認されていません」と書かれたウインドウが表示されます。「このアプリは、Google による確認が済んでいません。よく知っている信頼できるデベロッパーの場合に限り続行してください。」と書かれており、警告のような表示で驚くかもしれませんが、「詳細」と書かれている文字をクリックします。
クリックすると、「Google ではまだこのアプリを確認していないため、アプリの信頼性を保証できません。未確認のアプリは、あなたの個人データを脅かす可能性があります。」などの追加の文章が表示されますので、「(安全ではないページ)に移動」という文字をクリックします。
クリックすると、「ログイン – Googleアカウント」の「無題のプロジェクト(プロジェクト名) が Google アカウントへのアクセスをリクエストしています」というウインドウが表示されます。
ユーザー本人に代わってのメールの送信
この時、上記がプロジェクトに許可されていることを確認しておきます。
確認後、「許可」ボタンをクリックします。クリックすると、プログラムが実行されます。
今回作成したスプレッドシートに記入したメールアドレスにメールが送信されているのか確認してみると、メールが送信されていることが確認できました。
コメント