The following snippet provides a way to set mailbox localisation. This is useful both for pre-provisioning users and correctly setting shared mailboxes and other Exchange resources to the correct timezone.

Note that the example depends upon the Exchange Online PowerShell module.


Import-Module ExchangeOnlineManagement

$sessions = Get-PSSession | Select-Object -Property State, Name
$isConnected = (@($sessions) -like '@{State=Opened; Name=ExchangeOnlineInternalSession*').Count -gt 0
    If ($isConnected -ne $True) {
        Get-PSSession | Remove-PSSession
        Connect-ExchangeOnline | Out-Null

Set-MailboxRegionalConfiguration -Identity <Identity> -Language en-AU -DateFormat "d/MM/yyyy" -TimeFormat 'h:mm tt' -TimeZone 'W. Australia Standard Time'