Copy Values of Person or Group Field between SharePoint Sites

Markus Kolbeck
Markus' Blog
Published in
1 min readNov 15, 2014

If you need to copy the values of a Person or Group Field (Type SPFieldUserValueCollection) from one list in one Site Collection to another list in another Site Collection, you can achieve that using PowerShell.

Suppose you want to move a list from one SharePoint Site to another and you would do this using the PowerShell cmdlets Export-SPWeb and Import-SPWeb.

The problem relies in the “people and groups” field, because it uses a site-specific id to identify the user (stored in the User Information List — /_catalogs/users/simple.aspx ).

Copying those values is not possible, because each user would eventually get a different ID on each SharePoint Site.

The Syntax of the SPFieldUserValue field is

<ID>;#<UserDisplayName>

e.g. 99;#Donald Duck

Using the following PowerShell Script, you can copy values of Person or Group Fields between SharePoint Sites. The script uses the EnsureUser() method to create an entry in the User Information List on the target site.

--

--