Сначала я бы
- итерировал, разделял и собирал данные (избегая неэффективных
+=
) - , а затем, в конце концов, сортировал уникальные для удаления дубликатов
- инаконец соедините элементы и сохраните в ячейку.
$exportpolicyrules = @'
"PolicyName","RuleIndex","ClientMatch"
"policy1","1","server1,server2,server3,server4"
"policy2","2","server5,server6,server6,server7"
'@ | ConvertFrom-Csv
$x = foreach($i in $exportpolicyrules){
$i.ClientMatch.Split(',')
}
($x | Sort -Unique ) -join ','
# $WS.Cells.item($row,12).Value2 = ($x | Sort -Unique ) -join ','
пример вывода (двойной сервер6 удален):
server1,server2,server3,server4,server5,server6,server7