Я выполняю почтовое слияние с новым документом с помощью Word для Office 365
Я пытаюсь сохранить новый документ в указанном месте. Однако я не знаю, как получить ссылку на этот новый документ, созданный после MailMerge.Execute.
В настоящее время я использую ActiveDocument, но есть другой документ «в пути» (я предположить, что это документ с ошибками), который я должен закрыть в дополнение к исходному документу, который я закрываю до тех пор, пока я не хочу сохранить ActiveDocument.
Существует ли более надежный способ получения ссылки на документ созданный MailMerge.Execute?
static void Main(string[] args)
{
string inDoc = @"C:\bob\doc.docx";
string data = @"C:\bob\data.csv";
string outDoc = @"C:\bob\out.docx";
Application wordApp = new Application();
Document wordDoc = wordApp.Documents.Open(inDoc);
wordDoc.MailMerge.OpenDataSource(data);
wordDoc.MailMerge.Destination = WdMailMergeDestination.wdSendToNewDocument;
wordDoc.MailMerge.SuppressBlankLines = true;
wordDoc.MailMerge.Execute(false);
// Close the input document
wordDoc.Close(false);
// Active document is now what? The error document?
// Close this too
wordApp.ActiveDocument.Saved = true;
wordApp.ActiveDocument.Close(false);
// Now have reference to the new document
wordApp.ActiveDocument.SaveAs2(outDoc, WdSaveFormat.wdFormatDocumentDefault);
wordApp.ActiveDocument.Close(false);
wordApp.Quit();
}