(Interop.Word)范围.复制范围.速度慢

本文关键字:范围 复制 速度慢 Interop Word | 更新日期: 2023-09-27 17:58:30

我使用Microsoft.Office.Interop.Word在另一个文档的基础上创建一个新文档。使用Range.Text进行搜索/替换操作有多次迭代,所有操作都很快。然而,在一种情况下,我需要复制一整章的所有格式,而不是Range.Text(重置所有格式)。我使用了Range.copy和Range.Paste.它们可以工作,但对于大约450个单词的测试章节,它们需要40秒(而当我将相同的代码更改为使用Range.TText时,不到1秒)。

问题:有什么方法可以让Range.Copy/Range.Paste更快吗?我所需要的只是找到一段特定的文本,并将其与所有表格、格式等一起复制到另一个文件中。

(Interop.Word)范围.复制范围.速度慢

如果您想在word中复制带格式的文本,可以像一样使用Range的FormattedText属性

targetRange.FormattedText = sourceRange.FormattedText;

避免使用Range.Copy()和Range.Paste(),因为这种方法在内部使用剪贴板,这可能会导致安全问题,或者在某些情况下可能会提供不可预测的结果