2 min readHow to Change Office 365 Users Primary Email Address in Bulk?

2 min readHow to Change Office 365 Users Primary Email Address in Bulk?

There are various scenarios in which Admin needs to change the Office
365 users primary email address in bulk or add secondary email address
in bulk. Some of the cases are:

  • Educational institutions has to provide email address to their

    Alumni. At the end of every year Admins has to modify set of users

    email address to alumni domain (Ex: sam@xxx.edu to

    sam@alumni.xxx.edu).
  • Organizations may have alias name for their employees in Sales team

    for the convenience of their customers. In this case admin need to

    add secondary email address to each user.

With the help of PowerShell this task is made easier. You need to create
a CSV with the list of username and the Primary email to be updated or
the secondary email to be added.

Most of the scripts available in the net, doesn’t update the user
principal name and Microsoft Online Services ID properly. When these
details are not updated the user will not be able to login with his new
username after the Primary email update. The below script will update
those values in user properties and hence they will be able to login
immediately with the new username.

PowerShell script to change users Primary email address

Step 1: Create a new CSV file with User, AliasEmailaddress as
headers.
Step 2: Now use the below cmdlet to import the CSV to PowerShell
and change the users Primary email.

$csv = Import-Csv C:UsersjohnDesktopemail.csv
foreach ($line in $csv)
{
$SMTP ="SMTP:"+$line.AliasEmailaddress
Set-Mailbox -Identity $line.User -EmailAddresses $SMTP -WindowsEmailAddress $line.AliasEmailaddress -MicrosoftOnlineServicesID $line.AliasEmailaddress 
} 

Note: when you change the primary email address of the user to
another domain, the new domain which you like to add should be included
to the list of Trusted Domains.

PowerShell script to add Secondary email address to users in bulk

Step 1: Create a new CSV file with User, AliasEmailaddress as
headers.

Step 2: Now execute the below script in Windows PowerShell to import
the CSV.

$csv = Import-Csv C:UsersjackDesktopemail.csv
foreach ($line in $csv)
{
$Mailbox= Get-Mailbox -Identity $line.User
$Primarymail=$Mailbox.PrimarySmtpAddress
$SMTP ="SMTP:"+$line.AliasEmailaddress
Set-Mailbox -Identity $line.User -EmailAddresses $SMTP,$Primarymail -WindowsEmailAddress $line.AliasEmailaddress -MicrosoftOnlineServicesID $line.AliasEmailaddress 
}

If you want to have a simple power packed GUI tool, you can use
GingerEx for Office 365, which is
available for $99.

Migrate Everything to Microsoft 365

Exchange Online SharePoint Online OneDrive For Business Microsoft Teams Microsoft Planner Viva Engage (Yammer) Microsoft Bookings Microsoft Forms Power Automate Microsoft Power BI Exchange Online SharePoint Online OneDrive For Business Microsoft Teams Microsoft Planner Viva Engage (Yammer) Microsoft Bookings Microsoft Forms Power Automate Microsoft Power BI
  • No Data Loss
  • Zero Downtime
  • ISO-Certified Protection

Start your free 15-days trial today !


4.5 out of 5