Change the display name format in the GAL from first name last name format to last name, first name on a global level

Thanks to Derek Solaris for doing all the work on this and letting me post it in my blog!

As always, make sure you have a current backup of your Active Directory before attempting this procedure.

Utilize ADModify to perform bulk update of user's Display Name to the format of Last Name, First Name.

Process to perform this:

  • Download ADModify from:

  • Extract ADModify binaries from the ZIP file.

  • Locate ADModify.exe and double click on it.

  • Click Modify Attributes

  • On the next screen, select the following

    • Under Domain List, click the dropdown box and select your domain.

Example: DC=domain,DC=com

    • Under Domain Controller List, click the dropdown box and select a domain controller from the list.  It is best to select a domain controller that is the closest to the machine where you are executing ADModify.

    • For Show Only, make sure that only Users is selected.  Deselect everything else.

    • Click the green button

  • This will return the domain.  Double-click on the domain object.  In this Example that is FineartSchool

  • This will expand the domain and show the Organizational Unit structure

  • Navigate to the Organizational Unit where the users that you wish to update reside.

  • You can double click on the Organizational Units to expand them.

    • In this example, I want to modify users located in the OU OU 1

  • Once you have the proper Organizational Unit selected, click on Add To List->

    • If there are users in sub OUs for the OU that you selected, also check Traverse Subcontainers

    • This will add all users that are located in the selected organizational unit to the list on the right side.

  • If you wish to update every user that was returned, click Select All.

  • If you wish to only update specific users, Shift Click or CTRL Click the users that you wish to update.

  • Click Next>>>

  • On the next screen, remain on the General tab

  • In the middle section of the General Tab, check the checkbox for Display Name

  • Above the Display Name field, you will see blue highlighted text LastName, FirstName.

    • Click on the blue LastName, FirstName text.

    • This will populate the Display Name field with %'sn'%, %'givenName'%

  • Once you are ready, click Go!

  • The pop up will indicate how many were changed, how many failed and how many were already set to the desired setting.

  • Click OK

  • Wait for Active Directory Directory Replication to complete.

  • You can check to see if the Display Name has been updated by going to the Recipient Configuration\Mailbox node in Exchange Management Console

  • Double click on a user.  On the General tab, at the very top the name should now be in the LastName, FirstName format.

Comments (3)

  1. Anonymous says:

    Why thank you for the plug David. I have used this tool a lot for bulk updates concerning Exchange. Very handy tool.

  2. Anonymous says:

    You can also use ADModify to undo the modifications that are made.

    Each time ADModify performs a modification of an object, an XML file I generated in the location where ADModify.exe. This XML file logs all of the modifications that were made to all objects. You can use this XML file(s) to undo any modifications made and have
    the values set back to the values prior to the update.

    * Execute ADModify and select Undo Changes

    * The Undo Screen opens. Select Browse to locate the Undo XML file that you would like to use.

    * Select the desired XML file andclick Open

    * Type in the FQDN of a domain controller and Click Undo

    * The pop up will indicate how many were changed, how many failed and how many were already set to the desired setting.

  3. Christopher Charles Mills says:

    I recently had to do the opposite of this, going from lastname, firstname to firstname lastname

    Posted below is the PowerShell command I ran to change it.

    #users with both a username like usr and an ‘,’ in their name
    $users = Get-ADUser -LDAPFilter "(&(samAccountName=usr*)(displayName=*,*))" -Properties displayName

    #loop through each
    foreach($u in $users){

    #split them by the ‘,’
    $split = $u.displayName.Split(‘,’);

    #join them back together
    $newname = $split[1].Trim() +" "+ $split[0].trim();

    #set it
    Rename-ADObject $u.DistinguishedName -NewName $newname
    Set-ADUser $u.SamAccountName -DisplayName $newname

Skip to main content