Забавно видеть, что все ребята из C # задают сейчас вопросы, на которые разработчики VBA отвечают с 15 лет. Стоит покопаться в примерах кода VB 6 и VBA, если вам приходится работать с проблемами автоматизации Microsoft Office.
Для пункта «ничего не происходит» все просто: если вы запускаете Word с помощью автоматизации, вы должны настроить приложение также на видимое. Если вы запустите свой код, он будет работать, но Word останется невидимым экземпляром (откройте диспетчер задач Windows, чтобы увидеть его).
Для точки «простое решение» вы можете попытаться вставить документ в заданном диапазоне с помощью метода InsertFile диапазона, например, как это:
static void Main(string[] args)
{
Word.Application oWord = new Word.Application();
oWord.Visible = true; // shows Word application
Word.Document oWordDoc = new Word.Document();
Object oMissing = System.Reflection.Missing.Value;
oWordDoc = oWord.Documents.Add(ref oMissing);
Word.Range r = oWordDoc.Range();
r.InsertAfter("Some text added through automation!");
r.InsertParagraphAfter();
r.InsertParagraphAfter();
r.Collapse(Word.WdCollapseDirection.wdCollapseEnd); // Moves range at the end of the text
string path = @"C:\Temp\Letter.doc";
// Insert whole Word document at the given range, omitting page layout
// of the inserted document (if it doesn't contain section breakts)
r.InsertFile(path, ref oMissing, ref oMissing, ref oMissing, ref oMissing);
}
ПРИМЕЧАНИЕ. В этом примере я использовал framework 4.0, который допускает необязательные параметры.