【问题标题】:Mail merge without saving c#邮件合并不保存c#
【发布时间】:2018-09-16 06:29:29
【问题描述】:

我已经使用邮件合并到下面的讲师的话。现在在最后一行,它将保存 word 文件,但我不想保存,我只想打开它而不保存! 我该怎么做? 我的邮件合并说明: https://vivekcek.wordpress.com/2012/08/25/create-a-word-document-from-a-template-using-c-mail-merge/

【问题讨论】:

  • 就目前而言,根据 Stack Overflow 政策,这个问题是题外话。问题中涉及的所有代码都应问题中,而不是在外部链接中。您可以使用问题下方的 [edt] 链接来包含代码。

标签: c# ms-word mailmerge docx-mailmerge


【解决方案1】:

该链接中的代码与邮件合并无关;它所做的只是展示如何使用合并字段作为占位符创建一个模板,然后使用 C# 代码覆盖通过 wordApp.Documents.Add 从模板创建的文档中的合并字段。文章声称“Word 模板是使用 MergeField 的 in word 创建的”充其量是误导性的; Word 模板通常不包含合并字段,而且模板中通常找不到合并字段!

如果您不想保存文档,只需替换:

wordDoc.SaveAs("myfile.doc");
wordApp.Documents.Open("myFile.doc");
wordApp.Application.Quit();

与:

wordApp.Application.Quit(False);

如果您希望 Word 保持打开状态,请省略 wordApp.Application.Quit(False);还有

【讨论】:

  • 感谢您的回答。您有任何文章可以用于标准邮件合并,并且绝对不要保存并结束吗?
  • 真正的 Word 邮件合并具有三个输出选项:新文档、打印机或电子邮件。这些都需要保存文档。我建议您从基础开始:support.office.com/en-us/article/…。一旦你掌握了这一点,你可以考虑自动化合并,如有必要,你可以查看讨论,例如:social.msdn.microsoft.com/Forums/office/en-US/…
  • 如果您希望 Word 保持打开状态,请省略 wordApp.Application.Quit(False);也。
【解决方案2】:

应该替换

wordDoc.SaveAs("myfile.doc");
wordApp.Documents.Open("myFile.doc");
wordApp.Application.Quit();

wordApp.visible = true;
wordApp.Activate();

现在合并的单词一开始不需要保存,就像草稿一样。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-25
    • 2017-05-05
    • 2010-09-22
    • 2019-10-21
    • 1970-01-01
    • 2011-07-14
    相关资源
    最近更新 更多