CData Software Blog

クラウド連携のCData Software の技術ブログです。

Excel で Microsoft Teams のチーム(グループ)に所属メンバーのマトリクス図を作成・管理:CData Excel Add-in for MS Teams

https://cdatajbuilds.s3-ap-northeast-1.amazonaws.com/CDataBlog/teamsexceladdin.gif

こんにちは。CData Software Japan リードエンジニアの杉本です。

みなさんはチャットツール活用されていますか?

チャットツールを会社に導入して、よく聞かれるのが、どのように管理していくか? というトピックです。 チャットツールの浸透度・活用度の可視化はもちろんのこと、メンバーの管理やチーム、グループの棚卸しをどうするか? 

浸透度や活用度はある程度サービス付帯のアナリティクスツールなどでわかりますが、メンバー管理や棚卸しツールはあまり見当たらないなと思います。

そこで今回は CData で最近リリースした Excel Add-in for MS Teams を使って、チャットツールをExcelで管理・可視化する方法を紹介します。

f:id:sugimomoto:20200303134012p:plain

f:id:sugimomoto:20200303115338p:plain

手順

必要なもの

  • Excel
  • Office365・Teams アカウント

Excel Add-in for MS Teams のセットアップ

まず、CData Excel Add-in for MS Teams をセットアップします。

以下のURLからトライアルが入手可能です。

https://www.cdata.com/jp/drivers/msteams/excel/

f:id:sugimomoto:20200303115345p:plain

セットアップファイルをダウンロード後、そのままウィザードに従って進めれば、そのままセットアップが完了します。Excelを立ち上げていると、セットアップできないので注意してください。

f:id:sugimomoto:20200303115351p:plain

セットアップ後、Excelを立ち上げると CDATAタブからMS Teamsアドインにアクセスできるようになります。

f:id:sugimomoto:20200303115356p:plain

「取得元 MS Teams」をクリックすると、接続ウィザードが表示されます。

ここで、接続先のテナントやProxy、ファイアウォールなどの設定を行います。特にネットワーク周りや複数テナントの利用などが無い場合は、そのまま「接続テスト」をクリックします。

f:id:sugimomoto:20200303115402p:plain

クリック後、ブラウザが立ち上がるので、対象のアカウントにログインし接続許可を承認すれば、接続設定完了です。

f:id:sugimomoto:20200303115406p:plain

取得したいデータの一覧画面に移動するので、Teamsテーブルを選択して、OKをクリックしてみましょう。

f:id:sugimomoto:20200303115412p:plain

Excel シートに現在自分がアクセスできるチームの一覧が表示されます。

f:id:sugimomoto:20200303115417p:plain

このような形で、CData Excel Add-in では以下のようなリソース(テーブル・ビュー)の一覧にアクセス可能です。それぞれの詳細はこちら のヘルプを参照してみてください。

  • Apps
  • Channels
  • GroupMembers
  • GroupOwners
  • Schedules
  • SchedulingGroups
  • Shifts
  • Teams
  • TeamsInstalledApps
  • TeamTabs
  • TimeOffReasons
  • TimesOff
  • Groups
  • Users

メンバーがどのチーム(グループ)に所属しているかを可視化する:マトリクスの作成方法

それでは、表題にもなっているメンバーが所属しているチーム(グループ)のマトリクス図を作成してみたいと思います。

CData Excel Add-in では、SQLを使って通常のAPI処理では実現しづらいデータの取得を行うことができます。

チーム(グループ)の所属メンバーは「GroupMembers」テーブルで取得できますが、このテーブルにはGroupとMemberのIdの情報しか無いため、それぞれGroupsとUsersのテーブルを結合してデータを取得します。

Excel Add-inのSQL入力ボックスに以下のようなSQLを入力して、実行してみます。

SELECT 
[GroupMembers].[GroupId],
[GroupMembers].[MemberId] ,
[Groups].[DisplayName] as [GroupDisplayName],
[Users].[Mail],
[Users].[DisplayName] as [UserDisplayName]
FROM [GroupMembers]
LEFT OUTER JOIN [Groups] ON [GroupMembers].[GroupId] = [Groups].[Id]
LEFT OUTER JOIN [Users] ON [GroupMembers].[MemberId] = [Users].[Id]

f:id:sugimomoto:20200303115425p:plain

すると、以下のようなそれぞれのリソースが結合された結果を取得できるので、あとはExcel のピボットテーブルでマトリクスを作成するだけで完了です。

f:id:sugimomoto:20200303115432p:plain

以下のように行にUserDisplayName、列にGroupDisplayName、値に件数のカウントを設定することで、ユーザーが所属するチームの一覧を可視化できました!

f:id:sugimomoto:20200303115439p:plain

チャネルを追加する

Excel Add-inを使って、チャネルを追加することも可能です。

手順は簡単です。Select Table画面にて、「Channels」テーブルを選択し、「OK」をクリックします。

f:id:sugimomoto:20200303115446p:plain

一番下の行に新しくDiplayNameと作成する先のTeamIdを入力し、「行の挿入」をクリックするだけです。

f:id:sugimomoto:20200303115452p:plain

Teamsの画面に移動してみると、新しくチャネルの追加ができたことがわかります。一括で複数チャネルに追加することも可能です。

f:id:sugimomoto:20200303115458p:plain

チームの設定を変更する

Excel Add-inを使って、チーム(グループ)を設定を変更することも可能です。

チームの一覧を取得すると、各種設定情報も確認できます。

f:id:sugimomoto:20200303115503p:plain

例えばメンバーのアクセス許可に存在する、チャネルの作成・更新の許可設定があります。

f:id:sugimomoto:20200303115510p:plain

この設定は「memberSettings_allowCreateUpdateChennels」で変更できます。これをFALSEにして、「行の更新」をクリックすると

f:id:sugimomoto:20200303115516p:plain

以下のように設定が変更されました。

f:id:sugimomoto:20200303115522p:plain

複数チャネルを一括で更新することも可能です。

f:id:sugimomoto:20200303115529p:plain

おわりに

今回は Excel Add-in ベースで紹介しましたが、他にも ODBCADO.NET からも接続することが可能です。

Power BIでもマトリクス図はおなじような表現が可能です。

f:id:sugimomoto:20200303115650p:plain

是非好みのツールで試してみてください。