目的
・業務のひとつに他部署から送られてきたメールの添付資料を名前を変えてBOXに保存するだけの単純作業がありました。これはPowerAutomateで自動化することですることが出来ると考え、作成してみました。
PowerAutomateで作成するにあたって、メールの件名には毎回同じ文言があり、添付資料が付いているものを受信したときに自動で作動するフローを作成しました。
これは他の方のブログ等でも紹介されていますが、作成するに当たり何点か躓いたところがあったのでご紹介させていただきます
フローの全体図

各工程の説明
新しいメールが届いたとき(V3)

今回は上記のように、件名に『桟橋』と書いてあり、添付ファイルが付いている場合にフローが動作するように設定しました。その他に『宛先』。『差出人』、『CC』などで作動する条件を決めることもできますので、ご自由に設定してください。
現在の時刻

ここは添付ファイルをBOXに保存する際に、現在の日付をファイル名としたいので現在の時刻をPowerAutomate内で取得します。とくに設定をする必要はありません
タイムゾーンの変換


『現在の時刻』で取得した現在時刻は協定世界時で取得しており、日本の場合は9時間の時差が発生していますので、時差分を修正する処理を行っています。Soruce time ZoneとDestination time zoneにプルダウンから上記のように設定します。
Time unitには下記のコードを動的コンテンツの式に記入します
formatDateTime(addHours(utcNow(), 9), ‘yyyyMMdd’)
これにより、下記画像のBaseTime:2025-04-28T01:18:15.9029443Zから20250428の形に変換することが出来ます。

For Each

動的コンテンツから『新しいメールが届いたとき(V3)』で取得した『添付ファイル』を選択します。これにより、『新しいメールが届いたとき(V3)』で設定した条件に合うメールが来た際に、すべての添付ファイルに処理を行うことが出来るようになります。
ファイルの作成


フォルダーのパス欄には’/testフォルダ’などの様に直接フォルダパスを記入しています。右にあるフォルダアイコンから保存先を選択した場合は誤動作に繋がることがある為です。これについては以下のサイト方の記事を読むと理由が分かり易く記載されていますのでご参照ください。

・ファイル名には動的コンテンツの式で下記コードを記入します
concat(body(‘タイム_ゾーンの変換’), ‘ 現在船舶給水データ.xlsx’)
これは『タイムゾーンの変換』の出力:20250428と定型文をファイル名にしています。今回の場合だと【20250428現在船舶給水データ.xlsx】というファイル名で保存されます。
・ファイルコンテンツには動的なコンテンツの『新しいメールが届いたとき(V3)』で取得した添付ファイルコンテンツを選択します。
チャットまたはチャネルでメッセージを投稿する

最後にPowerAutomateフローが動作したことを認知出来るように、Teamsのチャットに通知が来るように設定をします。通知が必要ない方はここは付けなくてよいです。
コメント