如何保存PowerShell中新建的Excel文件(非导入文件)
解决PowerShell中新建Excel文件的保存问题
你找错了方法的归属——SaveAs方法属于Workbook对象(即你代码里的$workbook),而非Excel应用对象($excel)。
你的原创建代码:
$excel = New-Object -ComObject Excel.Application $workbook = $excel.Workbooks.add()
完成编辑后,直接调用$workbook的SaveAs方法即可保存,同时记得收尾清理进程,避免Excel后台残留:
# 定义保存路径(替换成你实际的路径) $savePath = "C:\Example\NewFile.xlsx" # 调用Workbook的SaveAs方法保存文件 $workbook.SaveAs($savePath) # 关闭工作簿与Excel应用 $workbook.Close() $excel.Quit() # 释放COM对象,彻底清理后台进程 [System.Runtime.Interopservices.Marshal]::ReleaseComObject($workbook) | Out-Null [System.Runtime.Interopservices.Marshal]::ReleaseComObject($excel) | Out-Null Remove-Variable excel, workbook
如果需要指定文件格式,可以在SaveAs中添加第二个参数,比如Excel 2007及以上的xlsx格式对应数字51:
$workbook.SaveAs($savePath, 51)
内容的提问来源于stack exchange,提问作者Miquel Àngel
相关产品推荐
相关产品推荐

