busy-modern-office

Microsoft365の運用を効率化するPowerShellコマンドをExcelで生成するシリーズです。

今回はExchange Onlineの会議室・備品追加です。
GUIから大量にやるのは萎えます・・・

※PowerShellを実行する際は、まずは少ない件数で様子を見てください。
※PowerShellの実行により、不具合が起きても、当方は一切責任を負いません。自己責任でお願いします。

Excelの準備

以下のようなパラメータシートを作ります。
screenshot_01



上記のパラメータを参照するセルに、以下の式を入力します。

="New-Mailbox -Name " & C2 & " -DisplayName """ & A2 & """ –" & B2

上記は会議室・備品を作成するコマンドを生成しています。


同様に以下の式を入力したセルを追加します。

・会議室・備品へのアクセス権変更
="Set-MailboxFolderPermission -Identity """& A2 &":\Calendar"" -User ""Default"" -AccessRights Reviewer"

・会議室・備品の設定変更
="Set-CalendarProcessing -Identity """ & A2 & """ -DeleteSubject 0 -AddOrganizerToSubject 1 -DeleteComments 0 -RemovePrivateProperty $false -EnforceSchedulingHorizon $false -MaximumDurationInMinutes 0"


式を入力すると、見た目は以下のようになります。
screenshot_02

※上記の設定内容は一例です。ご自身の環境に合わせて取捨選択し、各コマンドのパラメータも変更してください。

PowerShellコマンド実行

PowerShellを管理者権限で実行します。

※必要に応じ、事前にいろいろインストールしておいてください。初回だけでOKです。
・Microsoft OnlineService
Install-Module MSOnline
または、
Import-Module MSOnline –UseWindowsPowerShell  (PowerShell7の場合)
・Azure AD
Install-Module -Name AzureAD
・Exchange
Install-Module -Name ExchangeOnlineManagement
・SharePoint
Install-Module -Name Microsoft.Online.SharePoint.PowerShell
・Teams
Install-Module -Name MicrosoftTeams -Force


ここからが本題の作業です

1.
以下のコマンドを実行し、Microsoft365に接続します。
Connect-ExchangeOnline

2.
先ほど準備したExcelのPowerShellコマンドのセルをコピー(Ctrl+c)します。
複数セル選択しても大丈夫です。これにより一括登録が可能になります。
※あまり数が多いとエラーになる可能性があります。ご注意ください。
※パラメータが空白のセルもありますので、そこは避けてコピーしてください。
screenshot_03

3.
PowerShellのウインドウで貼り付け(Ctrl+v)します。
screenshot_04

4.
Enterキーを押すと、コマンドが実行されます。
※処理に時間がかかることがあります。プロンプトが表示され、カーソルが点滅するまで気長に待ちます。

5.
他のコマンドも同様(セルのコピー→貼り付け→Enter)に実行します。

6.
PowerShellのウインドウで以下のコマンドを実行し、Exchange Onlineを切断します。
Disconnect-ExchangeOnline



Exchange Onlineの不具合で、GUIでは設定できない場合も、上記の方法だと設定できます。