网站搜索

SharePoint Online:使用 PowerShell 更新多行文本字段值


要求:使用 PowerShell 更新 SharePoint Online 中的多行文本字段值。

PowerShell 在 SharePoint Online 中设置多行文本字段:

我在“项目”列表中有一个名为“纯文本”类型的“项目描述”列,下面是用于更新 SharePoint Online 中多行文本字段值的 CSOM PowerShell 脚本。


#Load SharePoint CSOM Assemblies
Add-Type -Path "C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\16\ISAPI\Microsoft.SharePoint.Client.dll"
Add-Type -Path "C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\16\ISAPI\Microsoft.SharePoint.Client.Runtime.dll"
 
#Parameters
$SiteURL = "https://Crescent.sharepoint.com/sites/PMO"
$ListName ="Projects"
$FieldName = "Project_x0020_Description"
$ItemID = 1

#Get credentials to connect
$Cred = Get-Credential

Try {
    #Setup the Context
    $Ctx = New-Object Microsoft.SharePoint.Client.ClientContext($SiteURL)
    $Ctx.Credentials = New-Object Microsoft.SharePoint.Client.SharePointOnlineCredentials($Cred.UserName, $Cred.Password)
 
    #Get the List Item to update
    $List = $Ctx.Web.Lists.GetByTitle($ListName)
    $ListItem = $List.GetItemById($ItemID)
    $Ctx.Load($ListItem)
    $Ctx.ExecuteQuery()
 
    #Update Multiple lines of text Field value
    $ListItem[$FieldName] = "Project Started: Q1 2018"+[System.Environment]::NewLine+"Completion Goal: Q2 2018"
    $ListItem.Update()
    $Ctx.ExecuteQuery()
    Write-host -f Green "Multiple Lines of Text Field Value has been updated for the list Item!"
    }
Catch {
    write-host -f Red "Error:" $_.Exception.Message    
}

它在 SharePoint Online 中的外观如下:

PnP PowerShell 更新多行文本列值

如果您的列允许富文本或增强型富文本,以下是如何使用 PnP PowerShell 更新多行文本字段值:


#Config Variables
$SiteURL = "https://Crescent.sharepoint.com/sites/PMO"
$ListName = "Projects"
$ItemID = 1
  
#Connect to PnP Online
Connect-PnPOnline -Url $SiteURL -Interactive
  
#Update multiple lines of value using PowerShell
Set-PnPListItem -List $ListName -Identity $ItemID -Values @{"Project_x0020_Description"= "<b>Project Started: </b>Q1 2018 <br><b>Completion Goal:</b> Q2 2018"}

相关文章