O365 / Exchange Time Zones and Regions

Occasional Visitor

Hi Everyone,

I'm bit of an Exchange (and Powershell) novice, hoping to get some help with reporting and updating the Language, Date Formats, Time Zones etc for all of our users (~450).


Found a Powershell command to get all the users current settings, made a couple of changes to export it to CSV, the CSV contained a few extra fields I didn't want so included the select statement.


Here's what I ended up with:


$Users = Get-Mailbox -ResultSize unlimited -filter {(RecipientTypeDetails -eq 'UserMailbox')}
$Users | Get-MailboxRegionalConfiguration | Select-Object Identity, Language, DateFormat, TimeFormat, TimeZone | Export-CSV -NoTypeInformation -Path C:\temp\regions.csv -Encoding UTF8


First time I ran it with the resultsize as 10 and all seemed to work fine. 

Change it to unlimited, left it to run and came back to :

"WARNING: Micro delay applied. Actual delayed: 49373 msecs, Enforced: True, Capped delay: 49373 msecs, Required: False, Additional info"


Saw a couple of options online to get around this (Start-Sleep or RobustCloudCommand), but a bit lost how to apply either to what I already have.


Is there a better way to extract the information I need?

Have I impacted the performance of the Powershell above by including the select statement?

Lastly to do a bulk update I was looking to use the following, will I experience the same Mirco delay issue?

$MymailBoxes = Get-Mailbox
ForEach ($ExamineDmailbox in $MymailBoxes){ $regionalconfig = Get-MailboxRegionalConfigurationidentity $examinedmailbox.identity
if ($regionalconfig.timezone -ne <"Time Zone"> ){ Set-MailboxRegionalConfiguration -identity $examinedmailbox.identity -TimeZone <"Time Zone"> -confirm:$False } }
0 Replies