Google Apps Scriptを使用して自動でメールを送信する

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 アカウントへのアクセスをリクエストしています」というウインドウが表示されます。

ユーザー本人に代わってのメールの送信

この時、上記がプロジェクトに許可されていることを確認しておきます。

確認後、「許可」ボタンをクリックします。クリックすると、プログラムが実行されます。

今回作成したスプレッドシートに記入したメールアドレスにメールが送信されているのか確認してみると、メールが送信されていることが確認できました。

コメント

タイトルとURLをコピーしました