チャネルの使用状況や設定を一括変更する際の前準備として情報収集する際に役立ててほしい。
検証環境について
動作確認した検証環境は以下の通り。
OS:Microsoft Windows 11 Enterprise
OSbuildバージョン:10.0.22621
PowerShellのバージョン:7.4.0
TeamsPowershellのモジュール名とバージョン
MicrosoftTeams:7.0.0.0サインインアカウントの権限はグローバル管理者。
使用するコマンド
Get-Team
使用例
Get-Team取得できる情報例
GroupId DisplayName Visibility Archived MailNickName Description
------- ----------- ---------- -------- ------------ -----------
0123abcd-0123-4567-890a-bcd123456789 全体連絡 Public False all ***********
17abc669-a2a8-432d-8b9f-4fc792ebb7b0 情報共有 Public False info ***********Get-TeamChannel
使用例
Get-TeamChannel -GroupId 0123abcd-0123-4567-890a-bcd123456789取得できる情報例
Id DisplayName Description MembershipType
-- ----------- ----------- --------------
19:****@thread.tacv2 01.チャネル ******** Standard
19:****@thread.tacv2 02.チャネル ******** Standardすべてのチャネルを取得する
#実行日時を取得する
$yyyyMMddFFFFF = Get-Date -Format "yyyyMMdd_FFFFF"
#CSVの保存先 windowsOSの場合、デスクトップに保存する
$csvSavePath = "$env:USERPROFILE\Desktop"
#CSVのファイル名
$csvFileName = "Teams_AllChanelList_${yyyyMMddFFFFF}.csv"
#取得した結果を保存する配列
$result = @()
#TeamsPowerShellに接続する
Connect-MicrosoftTeams
#すべてのチームを取得する
$teamList= Get-Team
#取得したチームの数だけ繰り返す
foreach($team in $teamList){
#特定チームのすべてのチャネルを取得する
$channelList = Get-TeamChannel -GroupId $team.GroupId
#取得したチャネルの数だけ繰り返す
foreach($channel in $channelList){
#取得した情報を変数に格納する
$result +=[PSCustomObject]@{
TeamName = $team.DisplayName
GroupId = $team.GroupId
ChannelName = $channel.DisplayName
MembershipType = $channel.MembershipType
ChannelId = $channel.Id
}
}
}
#取得した情報を並び替えした後、CSVファイルとして保存する
$result | `
Sort-Object TeamName,MembershipType,ChannelName | `
Export-Csv -Encoding UTF8 -NoTypeInformation -Path "${csvSavePath}\${csvFileName}"
#TeamsPowerShellから切断する
Disconnect-MicrosoftTeams問い合わせフォーム
リンク切れのご報告や、記載内容に不備がありましたら、お手数をおかけしますが
以下お問い合わせフォームからご報告をお願い致します。
コマンドの仕様確認やエラー内容の確認、対処方法については、ご契約されているMicrosoftかCSPへお問い合わせください。
※いただきました内容は確認させていただきますが、必ずしも回答をお約束するものではございません。






