Ключом к этому является использование объекта Range
. Вы должны определить диапазон, тогда, если то, что вы добавляете, не должно заменить то, что уже находится в диапазоне, диапазон должен быть «свернут». (Думайте об этом, как о выборе, затем о нажатии клавиши со стрелкой вправо или влево, чтобы получить мигающую точку вставки (курсор)).
Когда у вас есть диапазон, вы можете манипулировать им по своему усмотрению - он останется стабильным. Опять же, вроде как форматирование выделения при работе в качестве пользователя.
Word.Range rng = doc1.Words[i];
object oCollapseEnd = Word.WdCollapseDirection.wdCollapseEnd;
rng.Collapse(ref oCollapseEnd);
rng.Text = "the new text";
rng.Font.ColorIndex = Word.WdColorIndex.wdBlue;