メールに添付された請求書を自動で所定のフォルダに振り分けたい

最近はメールで請求書を送付する場合も多くなりました。例えばサブスクリプション方式の契約方式をとっているサービスを契約しているなどで、毎月定期的に請求書を受信する場合もあると思います。今回は、そのような場合に使えるテクニックをご紹介いたします。

メールの添付ファイルの振り分けですが、Microsoft365に含まれているPowerAutomateを使用します。PowerAutomateではフローと呼ばれる自動化処理を作成することが出来ますがこれを利用するわけです。PowerAutomateで作成できるフローには主に4種類あります。「インスタントクラウドフロー」「自動化したクラウドフロー」「スケジュール済みクラウドフロー」「デスクトップフロー」の4つになります。今回は、メールを受信したらすぐに所定のフォルダに保存したいので、「自動化したクラウドフロー」を作成して、自動で所定のフォルダに保存します。

まず、PowerAutomateを開いて新規にフローを作成していきましょう。一から作成するのではなくテンプレートを利用していきます。左のメニューから「テンプレート」をクリックします。

「Office365のメールの添付ファイル・・・・」という使えそうなテンプレートがあるのでそれを利用します。

「続行」をクリックします。

追加したフローは初期状態では以下のようになっています。表記が英語になっていますがご容赦ください。

「Condition」でメールの振り分けを設定します。今回は1つの差出人の請求書だけ所定のフォルダに保存することにしました。上記の図では、ConditionがTrueとFalseの場合が設定されていますが、Falseの場合は要らないので削除してしまいましょう。当該箇所で右クリックすると「削除」メニューが出るので削除しておきます。

削除できました。

では「Create file when・・・・」をクリックしてファイルの保存場所を設定していきます。

次に、「Condition」をクリックして、保存する添付ファイルの条件を設定します。

今回は、件名に”請求書”と含まれている場合に所定のフォルダに保存するように設定しました。

これでほぼ出来上がりなのですが、保存するファイル名を工夫したいと思います。

そこで「On new email」の後の+のマークをクリックしてアクションを二つ追加します。

左メニューの「アクションの追加」で探しやすいように「組み込み」にチェックを入れます。

「Date Time」をクリックします。

「現在の時刻」と「タイムゾーンの変換」の2つのアクションを追加します。

「タイムゾーンの変換」をクリックして、設定をします。

「Base Time」に設定されているものは、「現在の時刻」アクションで取得した時刻です。「Time Unit」はカスタムを指定して”yyyyMMdd”と入れています。こうすると20240130のような書式で日付が設定されます。

次に保存するファイル名の設定を変更していきます。

今回はconcat関数を使って文字列をつなげました。concat(‘A社’, body(‘タイム_ゾーンの変換’), ‘.pdf’)

以上で設定は終わりです。「保存」をします。

では、実行してみましょう。メールを受信すると以下のように自動で添付ファイルが保存されていることが確認できます。

如何でしょうか。今回は、PowerAutomateを使ったメールの添付ファイルの保存の自動化についてご紹介いたしました。皆様のご参考になれば幸いです。