我一直在尝试更新一些文档模板。我尝试了几种不同的方法,但这是我最近使用的代码。
“$word.quit()” 导致“无法转换 COM 对象...”错误
我不知道它有什么问题。
$word=New-Object -ComObject Word.Application
$updated = 0
$template = "C:\User\test.dotx"
Get-childItem -Path "C:\User\test" -Recurse -Filter *.docx |
Foreach-Object {
$document = $Word.Documents.Open($WordFile.FullName)
$word.documents.add($template)
$document.saveas($_, $wdFormatDocument)
$document.Close()
}
$word.quit()
[System.Runtime.Interopservices.Marshal]::ReleaseComObject($word)
Remove-Variable word
Write-Host $updated "Files Changed"
答案1
要设置现有对象的模板Document
,请使用:
documentObject.AttachedTemplate = "[FULL PATH TO TEMPLATE FILE]"
有关详细信息,请参阅 Microsoft 的 Document.AttachedTemplate 属性(Word)。