如何使用Microsoft.Office.Interop.Word C#

时间:2017-05-23 08:07:36

标签: c# winforms ms-word office-interop

我正在创建一个MsOffice模板应用程序(Winforms)来插入/评估word文档。

我想插入封面页,稍后在封面页中进行更改后,我想使用interop c#对其进行评估。我在互联网上搜索了很多,但我找不到合适的。

任何人都可以帮助我。

由于

1 个答案:

答案 0 :(得分:1)

因此,如果你的单词模板是相同的(如果文档已经存在),那么每次你必须:

  • 复制模板
  • 在模板上工作
  • 以所需格式保存
  • 删除模板副本

您要在word文档中替换的每个部分都必须为该位置插入书签(在区域中输入文本的最简单方法)。

我总是创建一个功能来完成这个,我最终传入路径 - 以及所有文本来替换我的文档内书签。函数调用有时会变长,但它对我有用。

Application app = new Application();
Document doc = app.Documents.Open("sDocumentCopyPath.docx");

if (doc.Bookmarks.Exists("bookmark_1"))
{
    object oBookMark = "bookmark_1";
    doc.Bookmarks.get_Item(ref oBookMark).Range.Text =
            "My Text To Replace bookmark_1";
}
if (doc.Bookmarks.Exists("bookmark_2"))
{
    object oBookMark = "bookmark_2";
    doc.Bookmarks.get_Item(ref oBookMark).Range.Text =
            "My Text To Replace bookmark_2";
}

doc.ExportAsFixedFormat("myNewPdf.pdf", WdExportFormat.wdExportFormatPDF);

((_Document)doc).Close();
((_Application)app).Quit();

上面的代码将为您插入文本 - 如果您知道的话,您有必要重新评估文档(并且可以在尝试插入之前添加检查,即:如果书签没有&#39 ; t存在)。

如果您需要更多解释,我也可以提供帮助:)我的示例将其保存为.pdf,但您可以选择任何您喜欢的格式。