PowerShell库隐藏Excel列?

您好,我需要在这个命令中隐藏一些没有硬编码的列:

Get-SLDocument "C:\123\123.xlsx" | Hide-SLColumn ` -StartColumnName D -ENDColumnName F -Verbose | Save-SLDocument 

我试图创build一个循环,但不能得到它的工作:

 $Path = "C:\123\" $excelFiles = Get-ChildItem -Path $path -include *.xlsx Foreach ($wb in $excelFiles) { Get-SLDocument $wb | Hide-SLColumn -StartColumnName D ` -ENDColumnName F -Verbose | Save-SLDocument } 

 $path1="C:\fso" $excelfiles=Get-ChildItem -Path $path1 -filter *.xls $xl=new-object -comobject Excel.application if($excelfiles.item.membertype -eq "ParameterizedProperty"){ for ($i=0;$i-lt $excelfiles.length;$i++) { echo $excelfiles[$i].FullName $wb=$xl.Workbooks.open($excelfiles[$i].FullName) $wb.CheckCompatibility = $False $wb.sheets(1).columns("U:AF").entirecolumn.hidden=$true $wb.save() $wb.close() }} else { $wb=$xl.Workbooks.open($excelfiles.FullName) $wb.CheckCompatibility = $False $wb.sheets(1).columns("U:AF").entirecolumn.hidden=$true $wb.save() $wb.close() } $xl.Quit() 

这使用COM对象创build一个Excel对象,并在Excel中打开,以隐藏列和closures并退出。 如果你不想看到excel对象打开和closures,你可以在创build对象后使用$ xl.visible = $ false