Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
要隐藏Excel列的PowerShell库?_Excel_Powershell - Fatal编程技术网

要隐藏Excel列的PowerShell库?

要隐藏Excel列的PowerShell库?,excel,powershell,Excel,Powershell,您好,我需要隐藏一些列: 我尝试创建循环,但无法使其工作: $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 } 这将使用com对

您好,我需要隐藏一些列:

我尝试创建循环,但无法使其工作:

$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
}
这将使用com对象创建excel对象,并在excel中打开以隐藏列、关闭和退出。如果不想看到excel对象的打开和关闭,可以在创建对象后使用$xl.visible=$false



这将使用com对象创建excel对象,并在excel中打开以隐藏列、关闭和退出。如果不想看到excel对象的打开和关闭,可以在创建对象后使用$xl.visible=$false

尝试此操作时是否遇到任何HRESULT或错误代码?不。我不知道为什么。。。它将粘贴孔脚本。您是否检查了$wb变量是否已填充。。。。尝试在循环中回显文档名。因此,您的excelfiles变量没有填充,因此循环不会执行任何操作,因为它是一个空值表达式尝试使用get childitem-path$path-filter*.xlsx尝试此操作时是否遇到任何HRESULT或错误代码?没有。我不知道为什么。。。它将粘贴孔脚本。您是否检查了$wb变量是否已填充。。。。尝试在循环中回显文档名。这样,您的excelfiles变量就不会被填充,因此循环不会执行任何操作,因为它是一个空值表达式尝试使用get-childitem-path$path-filter*.xlsx。您太棒了!非常感谢。请原谅我再问一个小问题:)。当脚本运行时,我有一个弹出窗口,需要在每个文件上按“继续”来保存它:MicrosoftExcell-CompatibilityChecker。是否有可能隐藏此窗口?您可以使用protectedviewwindow.open方法和enableediting=True来代替Workbook.open方法。很抱歉,我犯了一个错误protectedviewwindows没有enablediting属性。您可以使用类似于
$wb=$xl.protectedviewwindows.open($excelfiles[$i],Repairmode=True)
好的,我在ISE意外令牌修复模式中再次出错‌​=在表达或陈述上都是真实的你真是太棒了!非常感谢。请原谅我再问一个小问题:)。当脚本运行时,我有一个弹出窗口,需要在每个文件上按“继续”来保存它:MicrosoftExcell-CompatibilityChecker。是否有可能隐藏此窗口?您可以使用protectedviewwindow.open方法和enableediting=True来代替Workbook.open方法。很抱歉,我犯了一个错误protectedviewwindows没有enablediting属性。您可以使用类似于
$wb=$xl.protectedviewwindows.open($excelfiles[$i],Repairmode=True)
好的,我在ISE意外令牌修复模式中再次出错‌​=在表达或陈述上真实
$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()