チームに入っているメンバーをExcelに書き出す
Microsoft Teamsでチームを作成し、利用が進むと「このチームって今誰が入っていたかな、Excelで表示出来ないだろうか」と思うシーンが出てきませんか?
特に人数が多いチームだと、メンバーの棚卸しの目的で、そんなご要望もあるかもしれません。
Power AutomateにはTeamsのコネクターが用意されていますが、2022年3月の時点で「メンバーの一覧取得」というアクションは見当たりませんので、代わりに、チームを作成した際に背後で作られている「Microsoft 365 Groups」のメンバーを取得する事でこちらを実行してみましょう。
流れとしては以下のようになります。
- ウェブ版のExcelに空のExcelファイルを用意する
- Microsoft 365 Groupsにアクセスして、グループメンバーの一覧を取得
- ループ処理によって、メールアドレスと表示名をExcelに書き込む
まずExcelファイルをる
ウェブ版のExcelで、取得したメンバーを入れるための空のファイルを作成しましょう。ブラウザで、ウェブ版のExcelにアクセスします。ログインを求められたら、Microsoft 365のアカウントでサインインし、「新しい空白のブック」を選択して新規ファイルを作成します。ここに作成したファイルは、個人のOneDrive for Businessに自動保存されます。
ファイルの中の2列を選択して「テーブルとして書式設定」を選ぶ事で、テーブルを作成します。
Power Automate側作業を開始!
では、Power Automate側の作業に入りましょう。いつものようにPower Autoamteのページにログインしてから、インスタントクラウドフローを作っていきましょう。
「手動でフローをトリガーします」としてから新規のクラウドフローを作成します。細かいステップはこちらの記事を参照して下さい。
「新しいステップ」ボタンを押して、アクションを追加していきます。
「Group」と検索すると、「Office 365 Groups」に関連したアクションが表示されます。
Office 365 Groupsを選び、表示されたアクションの中から「グループメンバーの一覧表示」を選びます。
下の図ような流れになります。
グループIDは、プルダウンから選びたいチーム名を選択して下さい。「詳細オプションを表示する」をクリックすると、「上」と出てきますので、そこに読み込むメンバーの上限値を指定します(「上」という翻訳は…)。今回は大量のメンバーが入っているチームを想定して999と最大値を設定していますが、明らかにメンバーが30名程度だと分かっている場合には、ここの数字は変更しなくて大丈夫です。
「ステップを追加」ボタンを押して処理を追加していきましょう。「コントロール」から「Apply to each」を選びます。前のステップで取得したグループメンバーの一覧の一つ一つに対してループ処理を行う、という指示です。
「以前の手順から出力を選択」の箱には「value」を選択。「Apply to each」ループの中でまたステップを追加します。
値(value)をウェブ版のExcelに書き出していきますので「Excel Online」を選択します。無い場合は「コネクタとアクションを検索する」で検索しましょう。
最初にウェブ版のExcelで作成しておいたファイルを指定します。自分のOneDrive for Businessに自動的に保存されているので、そこに置かれている「members.xlsx」をプルダウンから選んでいきます。
Excelの中には2つの列があったので、最初の列にユーザーの表示名、2つ目の列にメールアドレスを入れるように動的なコンテンツで指定します。これで完成です!!「保存」ボタンを押すのを忘れずに。
保存をしたら、早速テストしてみましょう。右上の「テスト」ボタンを押して、作成したフローを動作させ、エラーが無いことを確認したら、自分のウェブ版Excelの「members.xlsx」ファイルを見てみると、作成した時には空だったファイルに、表示名とメールアドレスがずらっと入っています。
まとめ
このように、特定のチームの中に誰が入っているのかをファイルで書き出したい場合は、Power Autoamteを利用して実施することが出来ます。このフローを他の人にも共有したい場合は、こちらの記事を参考にしてください。
また、今回のシナリオとは逆に、Excelファイルに記載されているメールアドレスの人達を特定のチームに追加するには、こちらの記事を参考にしてくださいね。
それでは楽しいPower Automateライフ with Teamsをお楽しみ下さい!
本シリーズの目次はこちら:
https://qiita.com/Asuka_Nagamine/items/e94131a2be4878b65deb