Power Automate Desktopでメールを一括送信するフロー

今回はPower Automate Desktopを使った「メール一括送信フロー」をご紹介します!

フロー概要

今回ご紹介する「メール一括送信フロー」の概要は以下の通りです。
担当Aさんが、異なった職種を希望する複数の派遣スタッフさんにメールを送ります。

事前準備

フローを作成する前に、送信対象リストとメールテンプレートを用意しましょう。

  1. 送信対象リスト
    今回はExcelでメール送信する対象者リストを作成します。
    氏名
    カナ
    メールアドレス
    テンプレート
  2. メールテンプレート
    送信対象リストのテンプレートに記述された、テンプレートを作成します。
    ● プログラマー希望.txt
    ● 事務職.txt

フローの作成

  1. Excel の起動
    ”パラメーターの選択”の各項目について、それぞれ設定して保存ボタンを押下しましょう。
    【全般】
    Excelの起動:次のドキュメントを開く
    ドキュメントパス:送信対象リストのパスを指定
    インスタンスを表示する:ON
    読み取り専用として開く:OFF
    【詳細】
    ※変更なし
    【生成された変数】
    ExcelInstance
  2. Excel ワークシートから最初の空の列や行を取得
    ”パラメーターの選択”の各項目について、それぞれ設定して保存ボタンを押下しましょう。
    【全般】
    Excelインスタンス:%ExcelInstance%
    【生成された変数】
    FirstFreeColumn
    FirstFreeRow
  3. Excel ワークシートから読み取り
    ”パラメーターの選択”の各項目について、それぞれ設定して保存ボタンを押下しましょう。
    【全般】
    Excelインスタンス:%ExcelInstance%
    取得:セル範囲の値
    先頭列:1
    先頭行:1
    最終列:%FirstFreeColumn – 1%
    最終行:%FirstFreeRow – 1%
    【詳細】
    セルの内容をテキストとして取得:OFF
    範囲の最初の行に列名が含まれています:ON
    【生成された変数】
    sendList

  4. 現在の日時を取得します
    ”パラメーターの選択”の各項目について、それぞれ設定して保存ボタンを押下しましょう。
    【全般】
    取得:現在の日時
    タイムゾーン:システムタイムゾーン
    【生成された変数】
    CurrentDateTime

  5. 変数の設定
    変数:thisMonth
    値:%CurrentDateTime.Month%

  6. 変数の設定
    変数:newColum
    値:5

  7. 変数の設定
    変数:newRow
    値:2

    *-*-* 以下のように表示されているとOKです! *-*-*
    *-*-*
  8. For each
    ”パラメーターの選択”の各項目について、それぞれ設定して保存ボタンを押下しましょう。
    反復処理を行う値:%sendList%
    保存先:CurrentItem

    ※以下は1~5はFor each内に設定します。

    1. 変数の設定
      変数:plan
      値:%CurrentItem[‘テンプレート’]%
    2. ファイルからテキストを読み取ります
      ”パラメーターの選択”の各項目について、それぞれ設定して保存ボタンを押下しましょう。
      【全般】
      ファイル パス:メールテンプレートのファイルパスを指定
      ※最後に%plan%.txtとしましょう。

      内容の保存方法:単一のテキスト値
      エンコード:UTF-8
      【生成された変数】
      template

    3. テキストを置換する
      ”パラメーターの選択”の各項目について、それぞれ設定して保存ボタンを押下しましょう。
      【全般】
      解析するテキスト:%template%
      検索するテキスト:#NAME#
      検索と置換に正規表現を使う:OFF
      大文字と小文字を区別しない:OFF
      置き換え先のテキスト:%CurrentItem[‘氏名’]%
      エスケープ シーケンスをアクティブ化:OFF
      【生成された変数】
      template

    4. テキストを置換する
      ”パラメーターの選択”の各項目について、それぞれ設定して保存ボタンを押下しましょう。
      【全般】
      解析するテキスト:%template%
      検索するテキスト:#MONTH#
      検索と置換に正規表現を使う:OFF
      大文字と小文字を区別しない:OFF
      置き換え先のテキスト:%thisMonth%
      エスケープシーケンスをアクティブ化:OFF
      【生成された変数】
      template
    5. メールの送信
      ”パラメーターの選択”の各項目について、それぞれ設定して保存ボタンを押下しましょう。
      ※今回Gmailからのメールを行いますが、Gmailでアプリパスワード発行が必要です。コチラ
      【SMTPサーバー】
      SMTPサーバー :smtp.gmail.com
      サーバーポート :465
      SSL有効 :ON
      SMTPサーバーには認証が必要 :ON
      ユーザー名:送信元メールアドレス
      パスワード :アプリパスワード
      信頼されていない証明書を受け入れます:ON
      【全般】
      送信元 :送信元メールアドレス
      送信者の表示名:○○○株式会社
      送信先 :%CurrentItem[‘メールアカウント’]%
      CC :未入力
      BCC :未入力
      件名 :%thisMonth%月の案件情報
      本文:%template%
      本文はHTML:OFF
      添付ファイル:未入力

      ※メールアドレスの誤り等、メール送信できない場合に、エラー発生時についての処理も必要ですが、今回は割愛させて頂きます。
      *-*-* 以下のように表示されているとOKです! *-*-**-*-*
  9. Excelを閉じる
    ”パラメーターの選択”の各項目について、それぞれ設定して保存ボタンを押下しましょう。
    【全般】
    Excelインスタンス:%ExcelInstance%
    Excelを閉じる前:ドキュメントを保存しない

  10. メッセージを表示
    ”パラメーターの選択”の各項目について、それぞれ設定して保存ボタンを押下しましょう。
    【全般】
    メッセージ ボックスのタイトル:メール送信
    表示するメッセージ:OK
    メッセージ ボックス アイコン:いいえ
    メッセージ ボックス ボタン:OK
    既定のボタン:最初のボタン
    メッセージ ボックスを常に手前に表示する:OFF
    メッセージ ボックスを自動的に閉じる:OFF
    【生成された変数】
    ButtonPressed
    *-*-* 以下のように表示されているとOKです! *-*-*
    *-*-*

実行

実行ボタンを押しましょう
メールが送られていることを確認ください!

おわり

以上でメールを一括送信するフローのご紹介終了となります。
ぜひ、試していただき、皆様の業務改善に繋がると嬉しいです!