我有一个主文档,我想在其中插入许多文件。这些应该在文档中间的某个点一个接一个地插入到文件中。
所以我在此时创建了一个名为“TESTS”的书签,因为这似乎是以编程方式找到该点的最简单方法。
我可以使用以下代码插入单个文件:
Microsoft.Office.Interop.Word.Application oWord = new Microsoft.Office.Interop.Word.Application();
Microsoft.Office.Interop.Word.Document oWordDoc = oWord.Documents.Open(@"C:\master.doc");
oWordDoc.Bookmarks.Cast<Bookmark>().First(b => b.Name == "TESTS").Range.InsertFile(@"C:\test1.doc");
但这会删除书签,从而无法在同一点插入第二个文件。我不介意丢失书签,但只有在我插入所有文件后。
这可以做到吗?我猜上面的代码用书签替换了范围,所以在之前或之后找到位置然后删除书签范围是最好的 - 但我找不到它的代码。我尝试过的一切似乎都替换了整个文档。
或者,是否有任何方法可以在没有互操作的情况下执行此操作(即通过解析文件 - 根本不接触 MS Word)?