※当サイトの商品・サービスのリンク先にPRを含みます。

Google Apps Script 時短ツール

【残業2割減】GASでBCCかCCでメールを送信

お仕事おつにゃッス🐈

文系未経験から社内SEになった、あっきょ(@daily_code_JP)です!

メールでBCCかCCに設定して一斉送信するのに多大な時間と労力を費やしていませんか?

この記事ではそのお悩みを、コピペOKのGoogle Apps Scriptのコードで解決します。

あっきょ
この記事は以下で悩んでいる人におすすめッス!

  • 決まった人物にBCCかCCのメールを送信したい
  • 送信漏れやメールの設定ミスを減らしたい
  • プログラミングでJavaScriptを学んだけど、何を作っていいかわからない

誰でも無料で簡単にできますので、お気軽に学んでいきましょう!

0円でプログラミングを学べるスクール

侍テラコヤのロゴ

侍テラコヤはサブスク型のプログラミングスクール。

  • 50種類以上の教材を学び放題
  • 回答率100%の質問掲示板が無制限
  • 無料で学べる「フリープラン」

仕事後の夜遅くでもスキルアップするならおすすめです。

GASでBCCかCCでメールを送信するイメージ

GASでBCCかCCでメールを一斉送信するイメージ

スプレッドシートに登録したメールアドレスにBCCかCCで送信するアプリを作成します。

例えば、あなたは取引先全員に1回ずつ送信したら莫大な時間と労力が必要。

また、上司や先輩にはBCCに設定する場合は送信漏れの不安が残ります。

しかし、GASなら1クリックで送信を自動化しつつ、BCCかCCを設定して対象者全員に送信できます。

メールをBCCかCCで送信する準備

GASでメールをBCCとCCで一斉送信する準備します。ファイルは2つ必要です。

必要なファイル

  • Google ドキュメント ・・・ 送信するメール本文の作成
  • Google スプレッドシート ・・・ 顧客データの保存 & GASのプログラムの実行

Google ドキュメントの設定

Googleドキュメントでメールの本文を作成します。

文章内の {customer} には、「リスト」シートから取得した名前( 姓+名 )が入ります。

Google ドキュメントの編集は以上です。

GASでBCCかCCの設定をしてメールを送信するGoogle ドキュメントの設定

Google スプレッドシートの設定

顧客データを登録するスプレッドシートを作成していきます。

Google スプレッドシートはデータを管理するデータベースとして扱います。

「姓」,「名」,「メールアドレス」の計3つを列Aから列C の1行目に見出しを記入します。

GASでBCCかCCの設定をしてメールを送信するGoogle スプレッドシートの設定

個別の顧客情報を記入していきます。

後からテストで送信するので自身が所有するメールアドレスに書き換えます。

今回は例として1人だけ記入していますが、2人以上でも問題ありません。

GASでBCCかCCの設定をしてメールを送信するGoogle スプレッドシートの設定でメールアドレスを登録

シートの名前を変更します。

右クリックして「リスト」と名前をつけます。Google スプレッドシート の編集は以上です。

GASでBCCかCCの設定をしてメールを送信するGoogle スプレッドシートのシートの名前を変更

サンプルコードを貼り付ける場所

サンプルコードはGoogle スプレッドシートにコピペ。

上バーの「拡張機能」の中にある「Apps Script」をクリックしてコードを貼り付けます。

GASをスプレッドシートに記入する際の「Apps Script」の表示

メールをBCCかCCで送信するサンプルコード

BCCとCCに設定したGメールの一括送信するサンプルコードの公開と説明をしていきます。

解説の項目

  • サンプルコード
  • A. メールに送信する内容を設定
  • B. 操作するスプレッドシートの定義
  • C. BCCまたはCCで送るメールアドレスの取得
  • D. Google ドキュメントからメール本文を取得して送信

サンプルコード

右上にあるマークを押すとコードのコピペを一瞬でできます。

また、コード内で文頭にアルファベットが付いているコメントごとに詳細を説明していきます。

function sendMail() {
  //A.メールに送信する内容を設定
  const DOC_URL = 'Google ドキュメントのURL';
  const senderName = '送り主の名前'; 
  const subject = 'メールのタイトル';

  //B.操作するスプレッドシートの定義
  const spreadSheet = SpreadsheetApp.getActiveSpreadsheet();
  const listSheet = spreadSheet.getSheetByName('リスト');  
  const listLastRow = listSheet.getLastRow();
  
  //C.BCCまたはCCに送るメールアドレスの取得
  let ccAddress = ""; //BCCまたはCCで送るメールアドレスの列
  for(var i=2; i<=listLastRow; i++){
    const mailAddress = listSheet.getRange(i,9).getValue();
    ccAdress += mailAddress + ",";
  }

  //D.Google ドキュメントからメール本文を取得して送信
  const openDoc = DocumentApp.openByUrl(DOC_URL); //Google ドキュメントのURLを取得
  let wholeText = openDoc.getBody().getText(); //取得したドキュメントの本文を読み込み
  const recipient =  listSheet.getRange(2,4).getValue(); //toのメールアドレス
  const customerName =  listSheet.getRange(2,2).getValue()
                       + 
                        " " 
                       +
                        listSheet.getRange(2,3).getValue(); //送信先の氏名
  const options = {
                    name: senderName,
                    cc  : ccAddress 
                  };
  let body = wholeText.replace("{customer}", customerName); //テキスト内の{customer}を上書き
  MailApp.sendEmail(recipient, subject, body, options); //メールをCCで送信

}

A. メールに送信する内容を設定

//A.メールに送信する内容を設定
 const DOC_URL = 'メールの本文になる Google ドキュメントのURL';
 const senderName = '送り主の名前'; 
 const subject = 'メールのタイトル';

3つの定数を定義し、「' '」の中をそれぞれ書き換えます。

定数 DOC_URL は Google ドキュメントのURLを取得方法を取得します。

Google ドキュメントのURLの取得の方法

ドライブ内でメールの本文を書いた Google ドキュメントを保存した場所に移動します。

GASでBCCかCCでメールを送信するときにメールの本文になるGoogle ドキュメントのURLの取得

Google ドキュメントにカーソルを合わせて右クリックし、「リンクを取得」をクリックします。

GASでBCCかCCでメールを送信するときにメールの本文になるGoogle ドキュメントの「リンクを取得」をクリック

「リンクをコピー」をクリックしてコピー後、URLを定数 DOC_URL に上書きします。

GASでBCCかCCでメールを送信するときにメールの本文になるGoogle ドキュメントの「リンクのコピー」をクリック

B. 操作するスプレッドシートの定義

 //B.操作するスプレッドシートの定義
  const spreadSheet = SpreadsheetApp.getActiveSpreadsheet();
  const listSheet = spreadSheet.getSheetByName('リスト');  
  const listLastRow = listSheet.getLastRow(); 

編集するGoogle スプレッドシートを指定します。

getLastRowメソッドでは、空白ではない最後のセルの行番号を取得します。

最終行を取得するメソッドの詳細はこちら

【5分で解決】GASでスプレッドシートの最終行と最終列を取得

続きを見る

C. BCCまたはCCで送るメールアドレスの取得

  //C.BCCまたはCCで送るメールアドレスの取得
  let ccAddress = ""; //BCCまたはCCで送るメールアドレスの列
  for(var i=2; i<=listLastRow; i++){
    const mailAddress = listSheet.getRange(i,9).getValue(); //セルからメールアドレスを取得
    ccAdress += mailAddress + ",";
  }

メールアドレスをコンマで区切った1つの文字列を作成して変数 ccAddressに代入。

出力する文字列は「b@mail.com, c@mail.com, d@mail.com」のようになります。

D. Google ドキュメントからメール本文を取得して送信

  //D.Google ドキュメントからメール本文を取得して送信
  const openDoc = DocumentApp.openByUrl(DOC_URL); //Google ドキュメントのURLを取得
  let wholeText = openDoc.getBody().getText(); //取得したドキュメントの本文を読み込み
  const recipient =  listSheet.getRange(2,4).getValue(); //toのメールアドレス
  const customerName =  listSheet.getRange(2,2).getValue()
                       + 
                        " " 
                       +
                        listSheet.getRange(2,3).getValue(); //送信先の氏名
  const options = {
                    name: senderName,
                    cc  : ccAddress 
                  };
  let body = wholeText.replace("{customer}", customerName); //テキスト内の{customer}を上書き
  MailApp.sendEmail(recipient, subject, body, options); //メールをCCで送信

スプレッドシートとドキュメントからメールを作成してCCで送信します。

定数options では、CCに設定したの送信先のメールアドレスを指定します。

この例では定数ccAddress をCCで送信しますが、option内の「cc」を「bcc」に書き換えるとBCCで送信します。

コードの解説は以上です。

BCCかCCでメールを送信するテスト

実際にGoogle Apps Script からメールを送信します。

Apps Scriptの上バーの文字が「sendMail」なら「実行」をクリック。

GASでBCCかCCでメールを送信する関数の実行

「このアプリはGoogleで確認されていません」と表示した場合はこちら

【3分で解決】GASの「このアプリはGoogleで確認されていません」を許可する方法

続きを見る

問題がなければメールが届きます。

Google ドキュメント内の{custom}が氏名に書き換わっていることも確認できます。

GASでBCCかCCでメールを送信した結果

初心者でも学びやすい&挫折しないスクール3選

初心者でも学びやすいプログラミングスクールを3つ紹介します。

プログラミング独学の挫折率は60%近くと高め

エラーを解決できなかったり相談できる人がいなかったりと理由はさまざまです。

モチベを保てる環境を整えたのがスクールで挫折率を1割未満に抑えられます。

そこで、デイコーで調査した82社から厳選して解説します。

  • テックアカデミー | 未経験から月5万の副収入を目指す
  • インターネット・アカデミー | Excel自動化で残業減
  • 侍テラコヤ | 50種類以上の教材を学び放題

テックアカデミー | 未経験から月5万の副収入を目指す

はじめての副業コースのトップイメージ
引用:テックアカデミー

テックアカデミーは総合満足度95.3%で未経験者に人気のプログラミングスクール。

テキスト形式の教材で進めながら不明点を現役エンジニアのメンターに質問します。

  • 週2回のマンツーマンメンタリング
  • 毎日15〜23時までのチャットサポート
  • 課題レビューとアドバイス

夜遅くまで対応するので退勤後も気軽に相談できます。

「はじめての副業コース」ではGASの開発ベースになったJavaScriptを使ってWeb制作を学習。

学習後はメンターの支援を受けつつスクールの独自案件で副業の実績を積み上げます。

案件報酬と1件につき1~5万円と高単価ッスよ!
あっきょ
卒業生の口コミ33件紹介 口コミ・評判はこちら
無料相談でアマギフ500円分もらえる 公式サイト

インターネット・アカデミー | Excel自動化で残業減

インターネット・アカデミーのトップ画面
引用 : インターネットアカデミー

インターネット・アカデミーは初心者から最短距離でスキルを習得するスクール。

初心者が挫折しないサポートが10個が特徴で以下はその一部。

  • 動画授業が24時間見放題
  • 1年間受講受け放題
  • 技術面の質問ができるチャットサービス
  • 受講生限定のセミナーや交流会
  • 手厚い転職準備サポート&求人紹介

卒業後には未経験からエンジニア転職するキャリアプランも築けます。

Python×Excel自動化講座はエクセル自動化に特化したカリキュラム。

売上伝票の集計や顧客リスト抽出など実践的に学びながらPythonの基礎基本を身に着けます。

いつもの作業を効率化して残業を減らすならおすすめ。

受講者の8割近くが初心者で学びやすいのがわかるッス!
あっきょ
82社から8つ厳選 Pythonを学べるスクール
1分で無料カウンセリング予約 公式サイト

侍テラコヤ | 50種類以上の教材を学び放題

侍テラコヤのトップ画面
引用 : 侍テラコヤ

侍テラコヤは50教材以上を定額で受け放題のオンラインスクール。

回答率100%の質問掲示板などの初心者でも挫折しない環境が整っているのが特徴です。

フリープランは無料で教材の一部を閲覧可能

GASを学ぶ場合、「業務自動化コース」で基礎基本から学べます。

まずは0円で教材を利用したい人にはおすすめです。

Python や HTML/CSS などのほかの言語も学べるッス!
あっきょ
卒業生の口コミ23件紹介 口コミ・評判はこちら
「フリープラン」でGASを無料で学習 公式サイト

まとめ | GASでメールの送信は簡単!

以上、Google Apps Script を使ってメールをBCC&CCで自動送信するコードでした。

日常業務で使いやすいように改修したりプログラミングの練習に使ったりしてみましょう。

今回紹介したサンプルコード以外にも、GASでメールの自動化は可能。

ヒューマンエラーが起きやすく時間がかかる作業をGASに任せましょう。

不明点やスクール選びで悩んでいるならデイコーのお問い合わせまでご連絡を。

あなたのプログラミングのスキルアップを応援しますよ。

-Google Apps Script, 時短ツール
-, , , , , , , , , , , , , , , , , , , , ,