SOLVED

Fill PeoplePicker Field via PnP PowerShell

%3CLINGO-SUB%20id%3D%22lingo-sub-1700698%22%20slang%3D%22en-US%22%3EFill%20PeoplePicker%20Field%20via%20PnP%20PowerShell%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-1700698%22%20slang%3D%22en-US%22%3E%3CP%3EHey%20everybody%2C%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3EI%20have%20an%20Excel-List%20which%20contains%20a%20column%20which%20includes%20email%20addresses%20which%20I%20want%20to%20upload%20to%20a%20SharePoint%20List%20with%20PnP%20%22Add-PnPListItem%22.%26nbsp%3B%3C%2FP%3E%3CP%20data-unlink%3D%22true%22%3EThe%20addresses%20are%20comma-separated%20(mail%40test.com%2C%20mail2%40test.com%26nbsp%3B%26nbsp%3B).%3C%2FP%3E%3CP%20data-unlink%3D%22true%22%3E%26nbsp%3B%3C%2FP%3E%3CP%20data-unlink%3D%22true%22%3EMy%20problem%20is%20I%20found%20no%20way%20so%20far%20to%20get%20the%20correct%20syntax.%20I%20get%20the%20following%20error%3A%3CEM%3E%20Add-PnPListItem%20%3A%20The%20specified%20user%20mail%40test%20mail2test.com%20could%20not%20be%20found.%3C%2FEM%3E%3C%2FP%3E%3CP%20data-unlink%3D%22true%22%3E%26nbsp%3B%3C%2FP%3E%3CP%20data-unlink%3D%22true%22%3EI%20tried%20inserting%20the%20string%2C%20creating%20a%20object%20and%20a%20array-list%20and%20always%20get%20the%20same%20error.%20The%20addresses%20are%20correct.%3C%2FP%3E%3CP%20data-unlink%3D%22true%22%3E%26nbsp%3B%3C%2FP%3E%3CP%20data-unlink%3D%22true%22%3EMy%20code%20I%20use.%3C%2FP%3E%3CPRE%20class%3D%22lia-code-sample%20language-powershell%22%3E%3CCODE%3E%20%24Members%20%3D%20%24WorkSheet.Range(%22G%24i%22).Value2%20%20%20%20%20%20%20%20%20%20%23PeoplePicker%20-%20Input%20via%20Email%0A%0A%20%20%23Did%20not%20worked%0A%20%20%23%24Object%20%3D%20New-Object%20PSObject%20%0A%20%20%23%24Object%20%7C%20Add-Member%20NoteProperty%20%22Members%22%20%24Members%0A%20%20%20%20%20%20%20%20%20%20%20%20%0A%20%20%23%5BSystem.Collections.ArrayList%5D%24MyAL%20%3D%20%40()%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%0A%20%20%23%24Members.Split(%22%2C%22)%20%7C%20ForEach%20%7B%0A%20%20%23%24MyAL.Add(%24_)%7D%0A%0A%0AAdd-PnPListItem%20-List%20%24listName%20-Values%20%40%7B%22Title%22%3D%24ProjectNo%3B%20%60%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22ProjectNameWithLink%22%3D%22%24ProjectSiteUrl%2C%20%24ProjectName%22%3B%20%60%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22ProjectName%22%3D%22%24ProjectName%22%3B%20%60%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22ClientLookup%22%3D%22%24Client%22%3B%20%60%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22Manager%22%3D%22%24ProjectManager%22%3B%20%60%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22Director%22%3D%22%24Director%22%3B%20%60%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22Start%22%3D%22%24StartDate%22%3B%20%60%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22End%22%3D%22%24EndDate%22%3B%20%60%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%22Members%22%20%3D%20%22%24MyAL%22%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%7D%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%0A%20%20%20%20%7D%3C%2FCODE%3E%3C%2FPRE%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3EHow%20do%20I%20get%20the%20correct%20format%2Ftype%20to%20insert%20a%20multiple%20people%20with%20Add-PnPListItem%3F%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3EBest%20regards%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-LABS%20id%3D%22lingo-labs-1700698%22%20slang%3D%22en-US%22%3E%3CLINGO-LABEL%3EPowerShell%3C%2FLINGO-LABEL%3E%3CLINGO-LABEL%3ESharePoint%20Online%3C%2FLINGO-LABEL%3E%3C%2FLINGO-LABS%3E
Occasional Contributor

Hey everybody,

 

I have an Excel-List which contains a column which includes email addresses which I want to upload to a SharePoint List with PnP "Add-PnPListItem". 

The addresses are comma-separated (mail@test.com, mail2@test.com  ).

 

My problem is I found no way so far to get the correct syntax. I get the following error: Add-PnPListItem : The specified user mail@test mail2test.com could not be found.

 

I tried inserting the string, creating an object and an array-list and always get the same error. The addresses are correct.

 

My code I use.

 

 $Members = $WorkSheet.Range("G$i").Value2          #PeoplePicker - Input via Email

  #Did not worked
  #$Object = New-Object PSObject 
  #$Object | Add-Member NoteProperty "Members" $Members
            
  #[System.Collections.ArrayList]$MyAL = @()                
  #$Members.Split(",") | ForEach {
  #$MyAL.Add($_)}


Add-PnPListItem -List $listName -Values @{"Title"=$ProjectNo; `
                                              "ProjectNameWithLink"="$ProjectSiteUrl, $ProjectName"; `
                                              "ProjectName"="$ProjectName"; `
                                              "ClientLookup"="$Client"; `
                                              "Manager"="$ProjectManager"; `
                                              "Director"="$Director"; `
                                              "Start"="$StartDate"; `
                                              "End"="$EndDate"; `
                                              "Members" = "$MyAL"
                                               }                     
    }

 

 

How do I get the correct format/type to insert multiple people with Add-PnPListItem?

 

Best regards

 

 

EDIT:


I modified the Data Typ. I now get an Array, and it should be same as when I create it by hand.

$Members = $WorkSheet.Range("G$i").Value2.Split(',').Trim()

However, the problem still exists. I cant add the Members.

1 Reply
Best Response confirmed by wit4r7 (Occasional Contributor)
Solution

@wit4r7 

 

I just want to answer my own question.

 

After getting it into the correct format (the array) I messed up with quotation marks.

 

The following worked for me.

$Members = $WorkSheet.Range("G$i").Value2.Split(';').Trim()      
$Members.Replace('"', '')
Add-PnPListItem -List $listName -Values @{"Members" = $Members}