12
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

PowerAutomateを使ってOutlookで受信したメールをExcelに自動転記する

Last updated at Posted at 2022-01-25

やりたいこと

  • 特定のフォーマットで送られてくる問い合わせメールの内容をエクセルに転記して管理したい
  • 例えば以下のフォーマットでメールがきたら
[対象製品]
テスト

[問い合わせ内容]
テストです
  • エクセルにこう転記したい

automate1.jpg

Power Automateでフロー作成

Office365のメニューからPower Automateを起動し、[マイフロー]→[新しいフロー]→[自動化したクラウドフロー]を選択します。

automate2.jpg

フロー名は適当でOKです。フローのトリガーは「新しいメールが届いたとき(V3)」を選択して作成します。

automate3.jpg

Outlookから受信したメールを受け取る

「新しいメールが届いたとき(V3)」の設定をしていきます。
今回はテストとして自分から届いたメールのみを対象とします。実際に使う場合はシステムから送られるメールアドレスなど適切なものを設定してください。

automate4.jpg

メールの内容をパース

まずは、htmlメールをテキストで扱うために「Htmlからテキスト(プレビュー)」アクションを追加します。変換する対象は「本文」とします。(動的コンテンツから本文を選択してください)

automate5.jpg

次に対象の文字列を抽出するための変数を用意します。「変数を初期化する」アクションを作成してください。今回は、arrayという配列用の変数を作成しました。

automate6.jpg

サンプルを元に[対象製品]、[問い合わせ内容]という文字で区切って変数に格納します。値の部分の式は以下に記載しています。

split(split(outputs('Html_からテキスト')?['body'],'[対象製品]
')[1] , '[問い合わせ内容]
')

この部分は自分の処理させたいメールの内容と照らし合わせてロジックを考えてください。
参考までにsplit関数で改行を認識させるにはそのまま改行をいれないといけないみたいです。(\nや¥nを試してもダメでした)

Excelに転記する

最後に変数の内容やメールの受信日時をエクセルに転記するための「表に行を追加」アクションを追加します。
automate8.jpg

この「表に行を追加」アクションで追記を行う場合、対象のエクセルにはテーブルを作成する必要があります。そのため、新規のエクセルをOneNoteなどPowerAutometeからアクセスできる場所に作成し、対象のセルを[挿入]→[テーブル] からテーブルとして作成します。

automate7.jpg

PowerAutomateの画面に戻り、テーブルを指定すると自動的に書き込み先のセルを補完してくれます。あとは、準備しておいた変数を利用してエクセルに書き込む設定を行います。
詳細は省略しますが、受信日時はGMTから変更して形式を変更したり、配列の変数から改行を削除したりしています。(改行を削除した変数がproductとdescriptionです。)

automate9.jpg

あとはフローを保存して完了です。メールを受信すると自動でエクセルに追記されます!
automate10.jpg
automate11.jpg

おわりに

そもそも今どきメールで受信せずにTrelloとかサービスで問い合わせ管理するよねってツッコミはあると思いますが、既存の仕組みのまま少しづつ改善をしていこうと思うとPowerAutomateのような自動化ツールが効果的だったりします。また、Excelでデータを独立して管理しておくとあとでこのデータを分析したり、別のアプリで活用したりと疎結合にできるのも個人的には好きなポイントです。

12
8
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
12
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?