2015-12-14 6 views
0

Я использую Word Interop для вставки некоторого текста в ячейку таблицы. После добавления текста я хочу вставить закладку только в этот текст. На данный момент я могу выбрать всю ячейку и вставить в нее закладку, но я хочу, чтобы закладка принадлежала только тексту.Определить диапазон текста внутри ячейки таблицы

var cell = tb.Cell(row, col); 
cell.Range.Text = "MyText"; 
Microsoft.Office.Interop.Word.Range rng = tb.Cell(row, col).Range; 
rng.Select(); // this line is useful to see the range where bookmark will be placed 
rng.Bookmarks.Add("BookmarkName", rng); 

ответ

1

Диапазон внутри ячейки по-прежнему включает в себя знак конца ячейки. Вам необходимо соответствующим образом скорректировать диапазон, перемещая конец непосредственно перед добавлением закладки:

rng.MoveEnd Microsoft.Office.Interop.Word.WdUnits.wdCharacter, -1 
rng.Select(); // this line is useful to see the range where bookmark will be placed 
rng.Bookmarks.Add("BookmarkName", rng); 
+0

10 Спасибо, Dirk, он отлично поработал. –

Смежные вопросы