保存mailmerge文档

时间:2018-01-02 16:34:48

标签: c# ms-word interop mailmerge

我需要从模板开始生成并保存MS Word .doc文件(让我们说C:\ template.doc)和数据源(让'比如C:\ datasource.doc) 我正在使用MailMerge.Execute,如果我让Word可见,我会看到正确的结果文件,但我无法以任何方式保存此文件。代码是:

Microsoft.Office.Interop.Word.Application myWord = new Microsoft.Office.Interop.Word.Application();
Object oFalse = false; Object oTrue = true; Object oFileName = @"C:\merged.doc";
Word.Document myMailMergeDoc = myWord.Documents.Open(@"C:\template.doc");
myMailMergeDoc.MailMerge.OpenDataSource(Name: @"C:\datasource.doc");
myMailMergeDoc.MailMerge.Destination = Word.WdMailMergeDestination.wdSendToNewDocument;
myMailMergeDoc.MailMerge.Execute(oFalse);
try
   { 
       myWord.Documents["template.doc"].Close(oFalse);
       myWord.Documents.Save(oFileName);
       myMailMergeDoc.SaveAs(oFileName);
       myWord.ActiveDocument.SaveAs(oFileName);
   }
catch(System.Runtime.InteropServices.COMException ex)
        { }

try块中的三种保存方法都不会将文件保存在磁盘上。我做错了什么?

1 个答案:

答案 0 :(得分:0)

好的,我做到了:我错过了从Office安装程序安装VBA功能,现在文档已正确保存