このフローの目的
指定したTeamsチームのメンバーをExcelファイルの内容で追加または削除をできるだけシンプルに実現する超簡易版フローです。
Power Automateに不慣れな方でも作れるように極力アクションを少なくしています。
その代わり下記のような制限があります。ちゃんと作ればこれらの制限はすべて回避できますので、次のステップとしてチャレンジしてみてください。
- 所有者は削除できません。削除する前にメンバーに降格させておく必要があります。
- 既にメンバーの人を追加しようとするとエラーになります。
- メンバー権限で登録済みの人を所有者に変更する、またはその逆の変更はこのフローではできません。
- メンバー登録していない人を削除しようとするとエラーになります。
- 256行程度まで対応可能ですが、それ以上は"改ページ処理"を有効化することで対応可能です。
- エラー処理をしていないので途中でエラーが発生すると中断します。
ちゃんと作りこんだフローの例としては、Japan Dynamics CRM & Power Platform Support Blog の Power Automate で Teams のチーム作成とメンバー追加を自動化 の記事などがおすすめです。
Excelブックの準備
以下のような条件でExcelブックを用意します。
- テーブルを作成する
- OneDrive for Businessに保存する
項目名 | 必須? | 解説 |
処理 | 〇 |
追加:チームに追加 削除:チームから削除 |
メールアドレス |
〇 |
処理対象のユーザーのメールアドレス |
権限 |
△ |
所有者 or メンバー |
フロー全体図
フローの解説
使用するコネクタ・アクション
- Excel Online (Business)コネクタ
- 表内に存在する行を一覧表示 アクション
- コントロールコネクタ
- スイッチ アクション
- Apply to each (繰り返し) アクション
- Office 365 Group コネクタ
- グループからメンバーを削除 アクション
- Microsoft Teamsコネクタ
- チームにメンバーを追加する
- スケジュール
- 待ち時間 アクション
ポイント
- チームの所有者権限を持つ人がこのフローを実行できます。メンバー権限では実行時にエラーが発生します
- 「チームにメンバーを追加する」アクションの式について
- 「新しく追加されたユーザーがチームの所有者である必要があります」パラメーター(長い)の指定のためにここだけ式を使用しています。
- if(equals(items('Apply_to_each')?['権限'],'所有者'),True,false)
- 全員メンバーとして追加で構わない場合は、Office 365 Groups コネクタの「グループへのメンバー追加」アクションを使った方が式が不要となりシンプルにできます。
- こんな感じ
- 処理結果をすぐに確認したい場合はWebブラウザー版Teamsで確認をする。
- Teamsアプリには反映されるまでやや時間を要する場合がありました。Webブラウザー版Teamsの方が速く反映される印象です。
- いきなり実運用しているチームでフローで試すのはお勧めしません。まずはテスト用チームを用意してそちらでしっかりテストすることを強くお勧めします。