Класс Range
Класс Range предоставляет доступ к диапазону документа. На рисунке изображена объектная модель классов, относящихся к работе с диапазонами.

Варианты получения диапазона для текстового документа
// диапазон всего документа
Range range = document.getRange();
// диапазон блока
Block block = document.getBlocks().getBlock(0);
if (block != null)
{
Range blockRange = block.getRange();
}
// диапазон секций
Sections sections = document.getSections();
SectionsEnumerator sectionsEnumerator = sections.GetEnumerator();
foreach (var section in sectionsEnumerator)
{
Console.WriteLine(section.getRange().extractText());
}
// диапазон комментариев
Comments comments = document.getRange().getComments();
CommentsEnumerator commentsEnumerator = comments.GetEnumerator();
foreach (var comment in commentsEnumerator)
{
Console.WriteLine(comment.getRange().extractText());
}
// диапазон ячейки
Table table = document.getBlocks().getTable(0);
if (table != null)
{
Cell cell = table.getCell("B2");
Range cellRange = cell.getRange();
}
// диапазон верхних колонтитулов
Block block = document.getBlocks().getBlock(0);
if (block != null)
{
Section section = block.getSection();
HeadersFooters headers = section.getHeaders();
HeaderFootersEnumerator headerFootersEnumerator = headers.GetEnumerator();
foreach (var headerFooter in headerFootersEnumerator)
{
Console.WriteLine(headerFooter.getRange().extractText());
}
}
// диапазон отслеживаемых изменений
var trackedChangesEnumerator = document.getRange().getTrackedChangesEnumerator();
foreach (var trackedChange in trackedChangesEnumerator)
{
Console.WriteLine(trackedChange.getType().ToString());
Console.WriteLine(trackedChange.getInfo().author.name);
Console.WriteLine(trackedChange.getRange().extractText());
}