Ms word MS Word中样式的快速搜索和替换

Ms word MS Word中样式的快速搜索和替换,ms-word,ole-automation,Ms Word,Ole Automation,我需要将html文件自动转换为MS Word文件,作为其中的一部分,我希望删除所有样式为Normal(Web)的OCorance,并将其替换为Normal 我正在使用下面的 $find = $word.Selection.Find $find.Style = $word.ActiveDocument.Styles.Item("Normal (Web)") $find.Forward = $True $find.Format = $True while ($word.Selection.Find.

我需要将html文件自动转换为MS Word文件,作为其中的一部分,我希望删除所有样式为
Normal(Web)
的OCorance,并将其替换为
Normal

我正在使用下面的

$find = $word.Selection.Find
$find.Style = $word.ActiveDocument.Styles.Item("Normal (Web)")
$find.Forward = $True
$find.Format = $True
while ($word.Selection.Find.Execute())
{
    $word.Selection.Style = $word.ActiveDocument.Styles.Item("Normal")
    $null = $word.Selection.EndKey(5)
}

它工作起来很慢。有没有更快的方法?

找到了一种不可替代的方法,但具有预期的效果:

$style = $word.ActiveDocument.Styles.Item("Normal (Web)")
$style.Delete()

当通过COM自动化使用Word对象模型时,您的代码已经是最快的选项。只有在处理生成的(docx)文件本身时,才能加快速度,例如使用Microsoft的OpenXML SDK