0

这个站点中是一个关于使用 2 个数组和 MailMerge.Execute 方法进行邮件合并的示例,但该方法不接受 2 个参数。

无论如何,有没有办法用 2 个数组或 2 个列表做类似的事情?

谢谢。

这是他们使用的代码:

    // Open an existing document.
    Document doc = new Document(MyDir + "MailMerge.ExecuteArray.doc");

    // Fill the fields in the document with user data.
    doc.MailMerge.Execute(
    new string[] {"FullName", "Company", "Address", "Address2", "City"},
    new object[] {"James Bond", "MI5 Headquarters", "Milbank", "", "London"});

这是我要实现的方法:

    private void ReplaceMailMergeField(String plantilla, String[] campos, Object[] valores)
    {
        Object oMissing = System.Reflection.Missing.Value;
        Object oTrue = true;
        Object oFalse = false;
        Word.Application wordApp = new Word.Application();
        Word.Document wordDoc = new Word.Document();
        wordApp.Visible = true;
        Object templatePath = plantilla;
        wordDoc = wordApp.Documents.Add(ref templatePath, ref oMissing, ref oMissing, ref oMissing);
        wordDoc.MailMerge.Execute(campos, valores);
    }
4

1 回答 1

1

采用两个数组的第一个代码块是Aspose Words for .NET,这是一个独立于MS Word API的组件。

MS WordMailMerge.Execute()是一种不同的方法,它只采用一个可选参数。

要使用仅安装 C# 和 office 的方式自动合并邮件,请参阅以下文章:

KB301659 如何自动化 Microsoft Word 以从 Visual C# 执行邮件合并

http://everythingsharepoint.blogspot.in/2011/12/c-microsoft-word-2010-automated-mail.html

http://everythingsharepoint.blogspot.in/2011/12/c-microsoft-word-2010-automated-mail_01.html

于 2012-08-16T04:28:49.267 回答