見出し画像

【GAS】Googleスプレッドシートのデータを使ってHTMLメールを送信する方法

Googleスプレッドシートのデータを活用して、HTMLメールを作成し送信する方法をご紹介します。この方法を使えば、スプレッドシートの情報を基に、見栄えの良いメールを簡単に送ることができます。

目次

  1. はじめに

  2. 準備:スプレッドシートの作成

  3. Google Apps Scriptの作成

  4. コードの解説

  5. スクリプトの実行方法

  6. 注意点

  7. まとめ

はじめに

Google Apps Scriptを使えば、スプレッドシートのデータを基にHTMLメールを作成し、送信することができます。

今回は、週報などの報告をHTMLメールで送信する例を使って、その方法を詳しく解説していきます。

準備:スプレッドシートの作成

まずは、週報のデータを入力するスプレッドシートを作成しましょう。例えば、以下のような形式でデータを入力します:

A列(件名)B列(名前)C列(今週の成果)D列(来週の目標)週報(9/18-9/22)山田太郎プロジェクトAの完了新規顧客獲得3件

Google Apps Scriptの作成

次に、Google Apps Scriptを作成します。

  1. スプレッドシートのメニューから「ツール」→「スクリプトエディタ」を選択します。

  2. 新しいスクリプトファイルが開きます。ここに以下のようなコードを入力します。

javascriptfunction sendWeeklyReportEmail() {
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
  var subject = sheet.getRange("A2").getValue();
  var name = sheet.getRange("B2").getValue();
  var achievements = sheet.getRange("C2").getValue();
  var goals = sheet.getRange("D2").getValue();
  
  var htmlBody = `
    <html>
      <body style="font-family: Arial, sans-serif; line-height: 1.6; color: #333;">
        <h1 style="color: #4A86E8;">週間レポート</h1>
        <p>こんにちは、${name}さん</p>
        <h2 style="color: #6AA84F;">今週の成果</h2>
        <p>${achievements}</p>
        <h2 style="color: #E69138;">来週の目標</h2>
        <p>${goals}</p>
        <p>今週もお疲れ様でした。来週も頑張りましょう!</p>
      </body>
    </html>
  `;
  
  MailApp.sendEmail({
    to: "boss@example.com",
    subject: subject,
    htmlBody: htmlBody
  });
}

コードの解説

このスクリプトは以下のような流れで動作します。

  1. アクティブなシートを取得します。

  2. A2、B2、C2、D2セルからそれぞれ件名、名前、今週の成果、来週の目標を取得します。

  3. 取得したデータを使って、HTMLメールの本文を作成します。

  4. MailApp.sendEmail() メソッドを使って、作成したHTMLメールを送信します。

HTMLメールの本文では、見やすさを考慮して以下のような工夫をしています。

  • <h1>、<h2> タグを使って、見出しを設定しています。

  • インラインCSSを使って、フォントやカラーを指定しています。

  • テンプレートリテラル(バッククォートで囲まれた部分)を使用して、動的にデータを挿入しています。

スクリプトの実行方法

スクリプトを実行するには、以下の手順を踏んでください。

  1. スクリプトエディタの「実行」ボタンをクリックします。

  2. 初回実行時は、認証を求められます。画面の指示に従って、必要な権限を許可してください。

  3. 実行が完了すると、指定したメールアドレス(この例では “boss@example.com”)にHTMLメールが送信されます。



メールが送信されました。


いいなと思ったら応援しよう!

eguweb
サポートお願い致します!