シンプル・スマートな画面録画ソフト EaseUS RecExperts

  • Power Automate Desktopを使ってOutlookを自動化したい
  • Outlookを自動化できる内容には、どのようなものがある?
  • Outlookをどう自動化するのか例が知りたい

この記事では、以上の疑問にお答えします。

 

仕事でよく使うメーラーソフトといえば、Outlookがよくあげられます。

同じMicrosoft 製品なので、Power Automate Desktopで自動化できる内容も多彩です。

しかし、設定できる項目が多い故に、どうやって設定すればいいかわからない方も多いのではないでしょうか。

 

当記事では、Power Automate DesktopのOutlookアクションについてまとめた上で、Excelを使ったメールの一斉送信について解説します。

Power Automate DesktopとOutlookをうまく絡めれば、今まで以上に仕事を効率化できます。

ぜひ1度読んでみてください。

なお、Power Automate Desktopの利用方法・起動方法は、以下の記事をご覧ください。

【前提】Power Automate DesktopでできるOutlook業務

Power Automate Desktopで自動化できるOutlookは専門のカテゴリがあるくらい多彩です。

ざっくりあげるだけでも、下記の業務が自動化できます。

  • 定型文の自動送信
  • 受信メールをExcelへ転記
  • 特定のメールに対する自動返信

上記以外にも大量のメールを特定のフォルダに一気に移動させるなどの一括処理も可能です。

Outlook業務の大半を自動化できるので、メール処理にかかっていた時間を短縮し本来の業務に集中できるようになります。

Outlookアクションでできること

Power Automate DesktopでできるOutlookアクションには、どのようなものがあるのかを解説します。

最低限、設定すれば起動できる項目も一緒に紹介します。

Outlookの起動・終了

Outlookを自動化する際に、必ず加えるのが起動と終了アクションです。

起動時はOutlookを起動しますアクションを加えます。

power_automate_desktop_outlook3

起動すると、変数としてOutlookInstanceが生成されます。

以降のフローはOutlookInstanceをもとにアクションを加えてください。

Outlookを終了させるには、Outlookを閉じますアクションを加えます。power_automate_desktop_outlook4

注意点として、自動送信が終わる前にOutlookを閉じるアクションを加えると以下のメッセージが表示されます。

power_automate_desktop_outlook1

Outlookを閉じる前に、フローコントロールアクションにあるWaitを加えましょう。

Waitを使えば、設定した時間だけフローを止められます。

送信が終わるまでの秒数を設定しておけば、送信してから自動でOutlookを閉じることができます。

メールの取得

Outlookからメールメッセージを取得アクションを加えると特定のメールフォルダのメッセージを取得します。

power_automate_desktop_outlook13

設定項目は以下になります。

  • Outlookインスタンス:起動時に設定された変数(通常は%OutlookInstance%)
  • アカウント:使用したいメールアドレス
  • メールフォルダ:Outlook内で使用しているフォルダ。
  • 取得:全てのメッセージ、既読・未読を選択可能
  • 既読としてマークします:処理したメッセージを既読にするかどうかを選択可能
  • 送信者が次を含む:送信者に含める内容を記載します。
  • 宛先が次を含む:Toに含まれる内容を記載します(自分のメールアドレス等)
  • 件名に次が含まれています:本文に次が含まれています
  • 添付ファイル:添付ファイルがあれば、保存するかどうかを選択できます。

メールフォルダで、サブフォルダを指定する際は○○\○○と指定しましょう。

取得したメッセージには、RetrievedEmailsという変数が設定されます。

変数の中を見ると、下記画像のようになっています。

power_automate_desktop_outlook5

リスト型の変数なので、For Eachアクションを使えば全てのメッセージに処理が加えられます。

さらに、詳細表示を見ると下記画像のようにプロパティが表示されています。

power_automate_desktop_outlook6

取得できるプロパティを下記の表にまとめました。

プロパティ 内容
.Attachments 添付ファイル
.Bcc Bcc
.Body 本文のHTML
.Bodytext 本文のテキスト
.Cc Cc
.Date メールの受信日
.EntryID 一意のID
.From 送信者のメールアドレス
.MailFolder 受信したメールを保存するフォルダ
.Subject 件名
.To 宛先

メールの送信

Outlookからのメールメッセージの送信アクションを加えると、メールを自動送信します。

自分のアカウントを指定して、宛先や件名、本文などを入力して送信します。

power_automate_desktop_outlook7

メールをテキストファイルに保存

Outlookメールメッセージを保存アクションを使えば、取得したメールをテキストファイルなどに保存できます。

power_automate_desktop_outlook8

Outlookからメールメッセージを取得アクションとセットで使いましょう。

設定項目は以下になります。

  • アカウント:自分のメールアドレス
  • 保存形式:以下の5つを設定可能
    • テキスト
    • Outlookテンプレート
    • Outlookメッセージ(Unicodeあり・なし)
    • HTML
    • MHT
  • ファイル名:件名のままかカスタムで任意のファイル名を指定できます。
  • メールメッセージを次に保存します:保存先をフルパスで指定

たとえば、Excelに保存して分析したりOutlookテンプレートに保存したりするのも可能です。

特定メールに対する自動返信

Outlookメッセージに応答アクションを加えると、Outlookからメールメッセージを取得アクションで取得したメッセージに一斉返信できます。

power_automate_desktop_outlook9

For Eachアクションとセットで返信するのが特徴です。

設定項目は以下になります。

  • アカウント:自分のメールアドレス
  • メールメッセージ:取得アクションで設定した変数(CurrentItemなど)
  • 応答アクション:返信、全員に返信、転送の3種類が選べます。転送時は宛先やCcを設定します。
  • 本文:返信したい内容を記載します。
  • 添付ファイル:返信時に添付するファイルを選択します。フルパスで入力してください。

送信されたメッセージに対して、一括で同じ内容を送信する際に使えます。

Excelリストを使って、メールを一括送信する

では、応用としてExcelファイルを使ってメールを一斉送信してみましょう。

下記のファイルを使います。

power_automate_desktop_outlook10

【ステップ①】Excelデータを読み込む

まずはExcelデータを読み込みます。

Excelデータの読み込みについては下記の記事で詳しく解説しています。

以下のようにデータが読み込めていたらOKです。

power_automate_desktop_outlook11

データを読み込んだら、Outlookを起動しますアクションをExcelを閉じるの後に加えてOutlookを起動させます。

power_automate_desktop_outlook14

【ステップ②】For Eachアクションで繰り返し設定を行う

For Eachアクションを使えば、読み込んだデータをもとに繰り返し処理を設定できます。

For Eachはループアクション欄にあるので、Outlookを起動しますの次にドラッグアンドドロップしてください。

power_automate_desktop_outlook15

反復処理を行う値にステップ①で取り込んだExcelDataを入れます。

power_automate_desktop_outlook16

新たな変数として、CurrentItemが加わったのを確認します。

【ステップ③】メールを送信する

取り込んだデータをもとにメールを一斉送信します。

Outlookからのメールメッセージの送信をFor EachとEndの間にドラッグアンドドロップしてください。

power_automate_desktop_outlook17

画面が切り替わります。

power_automate_desktop_outlook7

ひとまず以下のように入力してください。

  • アカウント:自分のアカウント
  • 宛先:%CurrentItem['メールアドレス']
  • 件名:%CurrentItem['宛先']
  • 本文:自由

取得したデータ内の項目を使う際は、以下のように入力します。

=%CurrentItem['データ内の見出し']

宛先と件名には、データ内の見出しとしてメールアドレスと宛先を使います。

本文には、好きな文章を入力してください。

ここまでできたら、フローコントロールアクションにあるWaitをEndの後に加えます。

power_automate_desktop_outlook18

そのままフローを実行すると、自動送信する内容によっては送信する前にOutlookを閉じてしまいます(事実、筆者のOutlook環境は不安定なのでよく送信前に閉じてしまいます)。

設定する秒数は場合によりますが、ひとまずは300(5分)としましょう。

power_automate_desktop_outlook19

Waitを加えたら、Outlookを閉じるを後に加えます。

power_automate_desktop_outlook20

実行してみましょう。

今回は自分のGmailのエイリアスを使って自分のGmailに来るように設定したので、全てのメールが自分の受信トレイに来ているはずです。

power_automate_desktop_outlook12

メールの自動送信ができました!

なお、CurrentItemを使った入力については下記の記事でも解説しています。

同じCurrentItemの入力を使ったGmailの一斉送信方法はこちら

まとめ:Power Automate DesktopでOutlookを自動化してみよう

以上、Power Automate DesktopでOutlookを操作する際の設定方法やメールの一斉送信について解説しました。

 

同じMicrosoft製品なので、設定できる内容は豊富かつ分かりやすい印象があります。

また、For EachアクションとExcelファイルを使えば、メールの一斉送信がカンタンにできます。

 

仕事でOutlookを使っていたら、ぜひ取り入れてみてください。