Power AutomatePower Platform

【Power Automate】複数人宛のメール下書きを作成する(Outlook)

今回の記事では、メールアドレス一覧をもとに複数人宛のメール下書き(Outlook)を自動作成する方法をお伝えします。

スポンサーリンク

実現したいこと

以下のようなメールアドレス一覧をもとにPower Automateを実行すると、

メールアドレス一覧

自身のOutlookの下書きフォルダに以下のようなメールが作成されます。

下書きメールが作成される

実装方法

Excelファイル/SharePointリストのどちらを利用するかで実装方法が異なります。
下のタブでExcelファイル/SharePointリストのいずれかを選択してください。

  • Excelファイル
  • SharePointリスト

フローの全体像は下記の通りです。

複数人下書きメール作成フロー全体像

データ準備

メールアドレスが含まれたExcelファイルを用意し、下記のようにテーブル化しておきます。
(ExcelファイルはSharePointまたはOneDrive上に保存してください)

メールアドレス一覧

トリガー設定

今回は手動トリガーで作成しています。お好みで変更いただいても問題ありません。

手動トリガー

メールアドレス一覧の取得

今回はExcelのメールアドレスリストから情報を取得していきます。

場所・ドキュメントライブラリ・ファイル・テーブルについては、作成したExcelファイルに合わせて適宜設定してください。

Excelからメールアドレス一覧を取得

宛先の用意

ここが今回のポイントとなります。
下書きを作成する場合、宛先メールアドレスは「emailAddress/address」プロパティを含むJSON形式に整形する必要があります。

そこで利用するのが「選択」アクションで、下記の手順で設定していきます。

まずは選択アクションを追加し、「開始」には1つ上のアクションの結果(動的なコンテンツ)から「value」を選択します。

「開始」プロパティの設定

続いて「マップをテキストモードに切り替える」アイコンを押し、テキストモードに切り替えます。

テキストモードへの切替

テキストモードに切り替えた後、「マップ」内に下記の式を入力します。

{
  "emailAddress": {
    "address": ""
  }
}

最後に、ダブルクォーテーションの間にメールアドレスを表す列名(動的なコンテンツ)を設定します。(下記の図を参考にしてください)

メールアドレスの整形

メール下書きの作成

宛先となるJSONが用意できたので、メールの下書きを作成します。
既定のアクションは用意されていないため、Outlookコネクタの「HTTP 要求を送信します」アクションを利用する必要があります。

Outlook下書きメール作成の設定
URIhttps://graph.microsoft.com/v1.0/me/messages
メソッドPOST
本文
{
    "subject": "下書きテスト",
    "body": {
        "contentType": "Text",
        "content": "下書きテストです。ここに本文を入れます。"
    },
    "toRecipients": @{body('選択')},
    "ccRecipients": [],
    "bccRecipients": []
}
コンテンツの種類application/json

※ エラーが発生したり、画像のような「出力」が表示されない場合は、「@{body(‘選択’)}」部分を一度削除し、動的なコンテンツから「出力」を再選択してください。

エラー発生時の再選択

subject (件名) やcontent (本文) はお好みで変更いただければと思います。

件名と本文のカスタマイズ

フローの全体像は下記の通りです。

全体像(SharePoint版)

データ準備

SharePoint上にリストを用意し、ユーザー列を作成します。
今回は「Member」と命名し、3名のユーザーを追加しています。

ユーザー列の作成
メンバーリストの作成

トリガー設定

今回は手動トリガーで作成しています。お好みで変更いただいても問題ありません。

手動トリガー

メールアドレス一覧の取得

今回はExcelのメールアドレスリストから情報を取得していきます。
サイトのアドレス・リスト名については、ご自身の環境に合わせて設定してください。

複数の項目の取得

宛先の用意

ここが今回のポイントとなります。
下書きを作成する場合、宛先メールアドレスは「emailAddress/address」プロパティを含むJSON形式に整形する必要があります。

そこで利用するのが「選択」アクションで、下記の手順で設定していきます。

まずは選択アクションを追加し、「開始」には動的なコンテンツから「value」を選択します。

選択アクション

続いて「マップをテキストモードに切り替える」アイコンを押し、テキストモードに切り替えます。

テキストモードへの切替

テキストモードに切り替えた後、「マップ」内に下記の式を入力します。

{
  "emailAddress": {
    "address": ""
  }
}

最後に、ダブルクォーテーションの間に「[列名] Email」の動的なコンテンツを設定します。(下記の図を参考にしてください)

メールアドレスの整形

メール下書きの作成

宛先となるJSONが用意できたので、メールの下書きを作成します。
既定のアクションは用意されていないため、Outlookコネクタの「HTTP 要求を送信します」アクションを利用する必要があります。

Outlook下書きメール作成の設定
URIhttps://graph.microsoft.com/v1.0/me/messages
メソッドPOST
本文
{
    "subject": "下書きテスト",
    "body": {
        "contentType": "Text",
        "content": "下書きテストです。ここに本文を入れます。"
    },
    "toRecipients": @{body('選択')},
    "ccRecipients": [],
    "bccRecipients": []
}
コンテンツの種類application/json

※ エラーが発生したり、画像のような「出力」が表示されない場合は、「@{body(‘選択’)}」部分を一度削除し、動的なコンテンツから「出力」を再選択してください。

エラー発生時の再選択

subject (件名) やcontent (本文) はお好みで変更いただければと思います。

件名と本文のカスタマイズ

テスト

テストを実施してみると、自身のOutlookの下書きフォルダにメール下書きが作成されていることが分かります。

下書きメールが作成される

まとめ

メールアドレス一覧をもとに複数人宛のメール下書き(Outlook)を自動作成する方法をお伝えしました。
件名や本文を変更したり、TOと同様の形式でCCやBCCを入れるなどカスタマイズしてお使いください。

スポンサーリンク
Hiromaru

普段からPower Platform・SharePointの技術を広めています!
デザインに力を入れて、見やすい・分かりやすい記事を投稿していきます

Hiromaruをフォローする
シェアする
Hiromaruをフォローする
タイトルとURLをコピーしました