Я просто хочу создать программу на C#, которая будет читать шаблон слова и создать n количество его копий с функцией слияния. Данные для замены - это имя и адрес остальной части вещей в шаблоне должны оставаться неизменными. Может ли кто-нибудь сказать мне, как это сделать?Слияние почты в C# с n копиями
ответ
Вы можете использовать Aspose.Word для обработки объектной модели Word без необходимости устанавливать офис (чтобы использовать interop), где должна запускаться программа, я использую Aspose.Word для создания текстовых документов.
Ссылка на Aspose: http://www.aspose.com/categories/file-format-components/aspose.words-for-.net-and-java/default.aspx
И это работает вполне прилично :)
Я не уверен, хотите ли вы запустить MailMerge или скопировать шаблон. Я не могу помочь вам с C#, но этот фрагмент VBA может дать вам некоторые идеи.
strDir = CurrentProject.Path
strMailmergeDataFilename = strDir & Format(Now, "yymmdd_hhnnss") & ".txt"
' Create CSV from database for use with mailmerge '
' This is a separate function that simply exports the sql '
' ExportSQLToCSV SQL, strMailmergeDataFilename '
'Open merge template '
Set objWordDoc = GetObject(strDir & MergeDocumentFilename, "Word.Document")
objWordDoc.Application.Visible = True
'Format:=0 ''0 = wdOpenFormatAuto'
'Add the data source '
objWordDoc.MailMerge.OpenDataSource _
Name:=strMailmergeDataFilename, ConfirmConversions:=False, _
ReadOnly:=False, LinkToSource:=True, AddToRecentFiles:=False, _
PasswordDocument:="", PasswordTemplate:="", WritePasswordDocument:="", _
WritePasswordTemplate:="", Revert:=False, Format:=0, _
Connection:="", SQLStatement:="", SQLStatement1:=""
'Type some text at a bookmark, you could use .range property '
Selection.Goto What:=wdGoToBookmark, Name:="signaturetext"
Selection.TypeText Text:="You are here"
'Run mailmerge '
objWordDoc.MailMerge.Destination = 0 '0 = wdSendToNewDocument'
objWordDoc.MailMerge.Execute
objWordDoc.Application.ActiveDocument.PrintPreview
Я сделал это в Java - (пунктирная ссылка) working example here с исходным кодом.
Вот эта идея: используйте MS-Word для проектирования и создания документа, который вы хотите отправить. Сохраните его как XML (либо Word-ML, либо новый формат .docx). Затем, используя текстовый редактор, замените поля в документе тегами-заполнителями, например @@ NAME, где должно быть имя, и @@ ADDRESS для адреса и т. Д. Имена тегов не имеют значения.
Затем создайте логику замены - либо с помощью XSLT, либо даже с простой функцией замены на основе строк, и итеративно замените теги фактическими значениями данных. Сохраните каждый измененный документ.
Легкий peasy.
Вы можете использовать ту же конструкцию в C# - на самом деле это было бы EASIER.
- 1. Слияние почты с Java
- 2. Слияние почты с использованием Open XML SDK
- 3. C# N слияние для внешней сортировки
- 4. Инициализация строки C++ с копиями символов?
- 5. Слияние почты с Open Office с C# .NET
- 6. Слияние n деревьев AVL
- 7. Слияние «n» массивов?
- 8. Слияние с Subversion, слияние деревьев
- 9. Как сделать простой слияние почты в OpenOffice
- 10. Рекурсивное слияние карт уровня N
- 11. Слияние почты из набора данных в C# ASP.NET
- 12. Слияние почты с несколькими текстовыми полями Word
- 13. VBA - слияние почты через доступ
- 14. Слияние двух n-мерных массивов
- 15. Слияние почты в PDF, а не Печать
- 16. Сквош n фиксируется в одном, когда n включает слияние
- 17. В чем разница между этими двумя строковыми копиями C/C++
- 18. Проблема с очисткой изображения и резервными копиями
- 19. Повторите строку с пробелами между копиями
- 20. Возвращаемое значение двумя копиями
- 21. Работа с копиями массивов в javascript
- 22. Слияние почты в gmail с использованием вторичной учетной записи
- 23. Слияние данных в C#
- 24. C# работает с теми же копиями программы для MPI
- 25. Можем ли мы попрощаться с копиями конструкторов?
- 26. Слияние словарей в C#
- 27. Слияние запросов одной таблицы N раз
- 28. Слияние двух кучек: O (n * log (n)) по сравнению с O (n + m)
- 29. C#: Слияние сортировки с векторами
- 30. Простой слияние почты для формы Google
Aspose.Word - это потрясающий инструмент! Очень рекомендую! – 2008-11-18 11:33:35