Power Automate で定期的なイベントの案内を複数人に送信する

# はじめに
ごきげんよう、百合宮桜です。
実は BizOptimars ではお客様にブログ記事のネタリクエストを入れていただく仕組みがあります。
今回はその第1弾として「Power Automate で定期的なイベント（会議）を複数人に送付する方法」を書いていきます(≧▽≦)

# 実装方法

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3032705/0fd249a4-1a85-ff1a-e381-1bfeaccb46e7.png)

繰り返しの予定は、Office 365 Outlook コネクタの「イベントの作成（V4）」で作成できます。

https://learn.microsoft.com/ja-jp/connectors/office365/#%E3%82%A4%E3%83%99%E3%83%B3%E3%83%88%E3%81%AE%E4%BD%9C%E6%88%90-(v4)

1. トリガーを設定し、＋ > アクションを追加する をクリックします

    ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3032705/bbc0f192-3b0a-777f-67f6-20e96dd36474.png)

2. Office 365 Outlook の「イベントの作成（V4）」を選択します

    ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3032705/d0d15fe7-ce93-d112-7651-2bc9d97346cb.png)

    :::note info
    画面上部の検索ボックスに検索キーワードを入力すると検索できます
    ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3032705/556edeee-db32-8c5c-7562-92b49e076f96.png)
    :::

3. 予定表を選択します

    ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3032705/da88afaa-0882-8f79-b81a-f6b54686a8a7.png)

    ※ご自身のものしか出てきません。理由は後述します

4. イベント名（会議名）・初回の開始 / 終了日時・タイムゾーンを入力します

    ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3032705/3a548a7b-8014-5418-0e3a-d99cd05f8a75.png)

5. 詳細パラメーターの必須出席者・繰り返し・選択した曜日・繰り返しの終了日にチェックを入れます

    ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3032705/0be5fc66-cbbe-2fc1-4eeb-76f477d02462.png)

    :::note info
    チェック✅を入れることで必要なパラメーターだけを表示できます。
    ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3032705/897e2ac4-8930-5f29-d51d-993b2bf0a135.png)
    :::

6. 必須出席者に出席してほしいを入れます

    ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3032705/2ad61684-32b1-631c-333c-8f86169da3fe.png)

    :::note note
    名前を途中まで入力すると候補が出てくるので、クリックで選択します

    ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3032705/7e6546ff-220a-15db-d497-3d43cc722547.png)
    :::

7. 2人目以降は「その他のユーザーを検索するには～」で名前を入力して検索します
    
    ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3032705/b40d061e-cff8-06e5-bf18-a6f2996a79c4.png)

8. 繰り返しの頻度を選択します

    ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3032705/b491127c-3654-e4fa-56c5-b15d09a37b95.png)

9. 繰り返しの曜日などを選択します

    ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3032705/58e5ed8a-7ce0-e358-091a-3b1f294506a7.png)

10. 繰り返しの終了日を指定します

    ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3032705/2a757305-e207-0af2-089f-02d58ae69772.png)

11. 保存して完了です

    ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3032705/8f7eb2d0-9b00-e222-547d-cb1ab92f9e1d.png)

# テスト
テストボタンからテスト実行ができますので、実行してイベントが作成されるか確認してみてくださいね！

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3032705/f69d4101-dfbe-9b7c-646d-4f16fb32e9e3.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3032705/e2d93fc0-406a-eb38-2597-1bbeaac15ec8.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3032705/02bd73eb-fd75-1da8-86c4-c89b348e4efe.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3032705/9afe83ee-c391-dfb7-9ee3-d104436bfad6.png)

テスト実行後に Outlook を見ると、予定が入っていることが分かります
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3032705/afb221d5-d849-193a-6ea9-60f63d2800b1.png)


# 注意点    
## イベント開催者はフローの実行者になる
イベントの作成（V4）アクションで必須項目となっている予定表ID はフロー実行者のものしか選べません。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3032705/70e5196d-0333-5fa2-8575-fcde770d7a1e.png)

### 自動化したクラウドフロー・スケジュール済クラウドフローの場合
自動化したクラウドフローは、以下のようなトリガーでフローが自動で実行されるものです。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3032705/a23c9780-7cea-76b4-5fb2-b382b7aa7848.png)

スケジュール済クラウドフローは曜日や年月で実行頻度を制御して、実行するフローのことです。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3032705/db4470e1-fee4-b579-2161-17a524713e3b.png)


これらのフローは **フロー作成者=フロー実行者** となりますので、会議の開催者は強制的にフロー開発者になります。
Power Automate フローの中で他の人の予定表を選ぶことはできません。

### インスタントクラウドフローの場合
インスタント クラウドフローとは以下のようなユーザーの操作がきっかけになるトリガーで始まるフローのことです。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3032705/a213f5d7-df09-983c-27da-2b961ac3ddba.png)

このフローの場合、 **フローの実行者=フローを実行する操作をしたユーザー** です。つまりPower Apps のアプリの送信ボタンを押下したら、フローが実行されるという仕組みの場合は送信ボタンを押下したアプリユーザーがフローの実行者になります。
Power Automate では他人の予定表を取得することはできません。その為、ユーザーの操作で予定表ID を予め取得して、Power Automate に受け渡す必要があります。

詳細は以下の記事をご確認ください。

https://qiita.com/YurimyMiyu/private/364c07fc3dd1e1ab73b9

この方法なら Power Automate 側に受け渡す項目を増やせば、開始時刻や終了時刻も動的に設定することができますね✨

## 繰り返しで曜日を設定すると、開始時刻よりも曜日が優先される
以下のように開始時刻と選択した曜日が異なる場合、曜日が優先されます。
- 開始時刻：2025年1月24日（金）13時
- 繰り返し：Weekly
- 選択した曜日：Sunday
と設定すると
初回会議は 2025年1月24日（金）に最も近い未来の日曜日である 2025年1月26日（日）に設定されます。その後の繰り返しも日曜日であるため、2回目の会議は2025年2月2日（日）に設定されます。

## 繰り返しの終了日 or 発生回数は必ず入れる
予定が変更になって、イベントを更新・削除するというのはよくあることかと思います。「イベントが追加・更新・または削除された時（V3）」トリガーを利用した処理がある場合、繰り返しイベントの追加・更新・削除はすべてのイベントに対してフローが実行されてしまいます。

[トリガーの既知の問題と制限](
https://learn.microsoft.com/ja-jp/connectors/office365/#%E3%83%88%E3%83%AA%E3%82%AC%E3%83%BC%E3%81%AE%E6%97%A2%E7%9F%A5%E3%81%AE%E5%95%8F%E9%A1%8C%E3%81%A8%E5%88%B6%E9%99%90)

> トリガーは、イベントが発生するたびに発生します。 定期的なイベントを変更すると、このシリーズの全てのイベントに影響します。 たとえば、シリーズが 15 回発生する場合、トリガーは 15 回発生します。

この仕様について検証はやまさんが行っているので興味のある方は以下の記事を読んでみてください。

https://qiita.com/yamad365/items/ed8f37dff2a809487ada

この仕様により繰り返しの終了日や発生回数を設定しないと、「イベントの追加・更新または削除された時（V3）」トリガーを使っているフローでの実行が異様に多くなり、実行回数の制限にひっかかる可能性があります。

Power Automate の実行回数の制限とは、1日あたりのフローの実行回数の上限をさだめるものです。制限の上限値はライセンスによって異なります。
実行回数の上限を超過するとフローの実行が低速になったり、追加料金を請求されたりします。

https://learn.microsoft.com/ja-jp/power-automate/limits-and-config

フローの実行速度が遅いと業務に支障が出る場合もあるかと思います。業務改善を行って、業務に支障が出ては本末転倒ですので、繰り返しイベントには終わり（繰り返しの終了日 or 発生回数）を設けるようにしてください。

# 応用
## 参加者を動的に変更するには？
参加者はメールアドレスで指定します。複数人にする場合はメールアドレスを ; （セミコロン）で区切って、全員分を入力します。
つまり以下のような文字列が作成し、必須出席者・任意出席者のいずれかに格納すれば複数人の指定が可能です。

```
AAA@bizoptimars.com;BBB@bizoptimars.com
```

複数人を指定する方法はこちらが参考になります(≧▽≦)

# 終わりに
いかがでしたか？
定期的なイベントの案内は自動化として真っ先にあがる事項ですが、考慮事項が多いです。ぜひ試行錯誤しながら取り組んでいただければと思います。
それではごきげんよう！

https://qiita.com/YurimyMiyu/items/264a83bd4e7dfa85a86e