Power Automate(旧Microsoft Flow)を使って、メールの内容からOutlookの予定表にイベントを自動で作成するフローを作成する方法を解説します。特に、メールの内容に含まれる日時、場所、メールアドレスを抽出し、Outlook予定表にイベントとして登録する方法です。
1. Power Automateの基本フロー設定
まずは、Power Automateでフローを作成します。トリガーとして「Outlook.com – メールが届いたとき」を選択し、受信したメールをフローに渡します。次に、HTMLをテキストに変換するアクションを追加し、メール本文から必要な情報を抽出します。
2. メールからの情報抽出方法
メールの内容から必要な情報(メールアドレス、日時、場所)を抽出するために、式(expression)を使用します。例えば、メール本文に記載された「場所:」や「日時:」を基に情報を抽出します。具体的な式の例を以下に示します。
- メールアドレス抽出式:
match(outputs('Html_to_text'), '[\w\.-]+@[\w\.-]+') - 場所抽出式:
split(split(outputs('Html_to_text'), '場所:')[1], '\n')[0] - 日時抽出式:
split(split(outputs('Html_to_text'), '日時:')[1], '\n')[0]
これらの式を使用して、メールから必要な情報を変数に格納します。
3. 日時の整形
抽出した日時情報をISO形式に変換し、Outlookで使用できる形式に整形します。以下の式を使って開始日時と終了日時をISO形式で変換します。
- 開始日時変換式:
formatDateTime(concat(variables('date'), ' ', variables('startTime')), 'yyyy-MM-ddTHH:mm:ss') - 終了日時変換式:
formatDateTime(concat(variables('date'), ' ', variables('endTime')), 'yyyy-MM-ddTHH:mm:ss')
これにより、Outlook予定表で正しく表示できる日時形式になります。
4. Outlook予定表へのイベント作成
最終的に、Outlook予定表にイベントを作成するためには、以下のアクションを追加します。
- アクション名:「Outlook.com – イベントを作成 (Create event (V4))」
- 設定項目:
- 件名:会議名(例えば、「会議:田中 太郎様」)
- 開始日時:作成した「startDateTime」変数
- 終了日時:作成した「endDateTime」変数
- 場所:抽出した「location」変数
- 出席者:抽出した「emailAddress」変数
これで、メールの内容からOutlook予定表に自動でイベントを作成することができます。
5. エラーの解決方法
「イベントの作成 (V4)」アクションで「開始日時」や「終了日時」が正しい形式になっていない場合のエラーについては、日時の形式がISO 8601に準拠していることを確認してください。例えば、2025-08-12T08:30:00という形式で、時間帯が適切に設定されていることを確認します。
まとめ
Power Automateを使用して、メールから情報を抽出し、Outlookの予定表にイベントを自動で作成するフローを作成することができます。適切な変換式を使い、正しい日時形式でイベントを作成することで、手動での入力を減らし、業務の効率化を図ることができます。エラーが発生した場合は、日時の形式をISO形式に従って調整し、再度実行してみましょう。


コメント