以前、以下の記事にて退職したユーザーを共有メールボックスに変換し、ライセンスを利用せずに残す方法をご紹介させていただきました。
今回は、ユーザーメールボックスを共有メールボックスにする際に、複数のユーザーメールボックスを一括で共有メールボックスに変換する手順をご紹介させていただきます。
手順としては、CSVファイルに共有メールボックスに変換するユーザーをまとめていただき、PowershellでCSVファイルをインポートして一括で実施する方法となります。
以下に手順をご案内していきたいと思います。
ExchangeOnlineに接続してから実行してください。
1. 対象メールボックスを記載した CSV ファイルの作成を行う
共有メールボックスへ変換を行う対象メールボックスが記載された CSV ファイルを作成します。
CSV ファイルの編集
- メモ帳などのテキスト エディタを開きます。
- 以下の内容で CSV ファイルを作成します。
[作成例]
PrimarySmtpAddress
user001@contoso.com
user002@contoso.com
(以下 省略)
※ 1 行目は固定で、設定を行う対象メールボックスを 2 行目以降に記載します。
※ 作成する CSV ファイルはUTF-8形式で保存ください。
Windows PowerShell コマンドレットの実施時、ネットワークに負荷が生じエラーとなる可能性がありますので、1 つの CSV ファイルにつき 1000 ユーザー以内で作成いただくことをおすすめします。
CSV ファイル を UTF-8 で保存する手順
- CSV ファイルを右クリックし、[プログラムから開く] - [メモ帳] の順にクリックします
- 開いたメモ帳で [ファイル] - [名前を付けて保存] の順にクリックします。
- ファイルの種類で「すべてのファイル」を選択します。
- 文字コードで「UTF-8」を選択します。
- [保存] をクリックします。
2. CSV ファイルを取り込み一括で共有メールボックスに変換します
以下のコマンドレットを実施します。
[構文]
Import-CSV "<ファイル名を含んだ保存先のパス>" | foreach { Set-Mailbox -Identity $_.PrimarySmtpAddress -Type Shared Start-Sleep -m300}
[実行例]
Import-CSV "C:\Temp\MailBoxList.csv" | foreach { Set-Mailbox -Identity $_.PrimarySmtpAddress -Type Shared Start-Sleep -m300}