- 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を起動しますアクションを加えます。
起動すると、変数としてOutlookInstanceが生成されます。
以降のフローはOutlookInstanceをもとにアクションを加えてください。
Outlookを終了させるには、Outlookを閉じますアクションを加えます。
注意点として、自動送信が終わる前にOutlookを閉じるアクションを加えると以下のメッセージが表示されます。
Outlookを閉じる前に、フローコントロールアクションにあるWaitを加えましょう。
Waitを使えば、設定した時間だけフローを止められます。
送信が終わるまでの秒数を設定しておけば、送信してから自動でOutlookを閉じることができます。
メールの取得
Outlookからメールメッセージを取得アクションを加えると特定のメールフォルダのメッセージを取得します。
設定項目は以下になります。
- Outlookインスタンス:起動時に設定された変数(通常は%OutlookInstance%)
- アカウント:使用したいメールアドレス
- メールフォルダ:Outlook内で使用しているフォルダ。
- 取得:全てのメッセージ、既読・未読を選択可能
- 既読としてマークします:処理したメッセージを既読にするかどうかを選択可能
- 送信者が次を含む:送信者に含める内容を記載します。
- 宛先が次を含む:Toに含まれる内容を記載します(自分のメールアドレス等)
- 件名に次が含まれています:本文に次が含まれています
- 添付ファイル:添付ファイルがあれば、保存するかどうかを選択できます。
メールフォルダで、サブフォルダを指定する際は○○\○○と指定しましょう。
取得したメッセージには、RetrievedEmailsという変数が設定されます。
変数の中を見ると、下記画像のようになっています。
リスト型の変数なので、For Eachアクションを使えば全てのメッセージに処理が加えられます。
さらに、詳細表示を見ると下記画像のようにプロパティが表示されています。
取得できるプロパティを下記の表にまとめました。
プロパティ | 内容 |
---|---|
.Attachments | 添付ファイル |
.Bcc | Bcc |
.Body | 本文のHTML |
.Bodytext | 本文のテキスト |
.Cc | Cc |
.Date | メールの受信日 |
.EntryID | 一意のID |
.From | 送信者のメールアドレス |
.MailFolder | 受信したメールを保存するフォルダ |
.Subject | 件名 |
.To | 宛先 |
メールの送信
Outlookからのメールメッセージの送信アクションを加えると、メールを自動送信します。
自分のアカウントを指定して、宛先や件名、本文などを入力して送信します。
メールをテキストファイルに保存
Outlookメールメッセージを保存アクションを使えば、取得したメールをテキストファイルなどに保存できます。
Outlookからメールメッセージを取得アクションとセットで使いましょう。
設定項目は以下になります。
- アカウント:自分のメールアドレス
- 保存形式:以下の5つを設定可能
- テキスト
- Outlookテンプレート
- Outlookメッセージ(Unicodeあり・なし)
- HTML
- MHT
- ファイル名:件名のままかカスタムで任意のファイル名を指定できます。
- メールメッセージを次に保存します:保存先をフルパスで指定
たとえば、Excelに保存して分析したりOutlookテンプレートに保存したりするのも可能です。
特定メールに対する自動返信
Outlookメッセージに応答アクションを加えると、Outlookからメールメッセージを取得アクションで取得したメッセージに一斉返信できます。
For Eachアクションとセットで返信するのが特徴です。
設定項目は以下になります。
- アカウント:自分のメールアドレス
- メールメッセージ:取得アクションで設定した変数(CurrentItemなど)
- 応答アクション:返信、全員に返信、転送の3種類が選べます。転送時は宛先やCcを設定します。
- 本文:返信したい内容を記載します。
- 添付ファイル:返信時に添付するファイルを選択します。フルパスで入力してください。
送信されたメッセージに対して、一括で同じ内容を送信する際に使えます。
Excelリストを使って、メールを一括送信する
では、応用としてExcelファイルを使ってメールを一斉送信してみましょう。
下記のファイルを使います。
【ステップ①】Excelデータを読み込む
まずはExcelデータを読み込みます。
Excelデータの読み込みについては下記の記事で詳しく解説しています。
以下のようにデータが読み込めていたらOKです。
データを読み込んだら、Outlookを起動しますアクションをExcelを閉じるの後に加えてOutlookを起動させます。
【ステップ②】For Eachアクションで繰り返し設定を行う
For Eachアクションを使えば、読み込んだデータをもとに繰り返し処理を設定できます。
For Eachはループアクション欄にあるので、Outlookを起動しますの次にドラッグアンドドロップしてください。
反復処理を行う値にステップ①で取り込んだExcelDataを入れます。
新たな変数として、CurrentItemが加わったのを確認します。
【ステップ③】メールを送信する
取り込んだデータをもとにメールを一斉送信します。
Outlookからのメールメッセージの送信をFor EachとEndの間にドラッグアンドドロップしてください。
画面が切り替わります。
ひとまず以下のように入力してください。
- アカウント:自分のアカウント
- 宛先:%CurrentItem['メールアドレス']
- 件名:%CurrentItem['宛先']
- 本文:自由
取得したデータ内の項目を使う際は、以下のように入力します。
宛先と件名には、データ内の見出しとしてメールアドレスと宛先を使います。
本文には、好きな文章を入力してください。
ここまでできたら、フローコントロールアクションにあるWaitをEndの後に加えます。
そのままフローを実行すると、自動送信する内容によっては送信する前にOutlookを閉じてしまいます(事実、筆者のOutlook環境は不安定なのでよく送信前に閉じてしまいます)。
設定する秒数は場合によりますが、ひとまずは300(5分)としましょう。
Waitを加えたら、Outlookを閉じるを後に加えます。
実行してみましょう。
今回は自分のGmailのエイリアスを使って自分のGmailに来るように設定したので、全てのメールが自分の受信トレイに来ているはずです。
メールの自動送信ができました!
なお、CurrentItemを使った入力については下記の記事でも解説しています。
まとめ:Power Automate DesktopでOutlookを自動化してみよう
以上、Power Automate DesktopでOutlookを操作する際の設定方法やメールの一斉送信について解説しました。
同じMicrosoft製品なので、設定できる内容は豊富かつ分かりやすい印象があります。
また、For EachアクションとExcelファイルを使えば、メールの一斉送信がカンタンにできます。
仕事でOutlookを使っていたら、ぜひ取り入れてみてください。