Поделиться через


Программное свертывание диапазонов или выборок в документах

Если вы работаете с объектом Range или Selection , может потребоваться изменить выделение на точку вставки перед вставкой текста, чтобы избежать перезаписи существующего текста. Range Как объекты, так и Selection объекты имеют метод Collapse, который использует WdCollapseDirection значения перечисления:

  • wdCollapseStart сворачивает выделение к началу выделения. Это значение по умолчанию, если не указано значение перечисления.

  • wdCollapseEnd сворачивает выделение к концу выделения.

    Область применения. Сведения в этом разделе относятся к проектам уровня документа и проектам надстроек VSTO для Word. Дополнительные сведения см. в разделе "Функции", доступные по Приложение Office ликации и типу проекта.

Сворачивание диапазона и вставка нового текста

  1. Создайте объект Range , состоящий из первого абзаца в документе.

    Следующий пример кода можно использовать в настройке на уровне документа.

    Word.Range rng = this.Paragraphs[1].Range;
    

    Следующий пример кода можно использовать в надстройке VSTO. В этом примере кода используется активный документ.

    Word.Range rng = this.Application.ActiveDocument.Paragraphs[1].Range;
    
  2. Используйте значение перечисления wdCollapseStart для сворачивания диапазона.

    rng.Collapse(Word.WdCollapseDirection.wdCollapseStart);
    
  3. Вставьте новый текст.

    rng.Text = " New Text ";
    
  4. Выберите Range.

    rng.Select();
    

    Если вы используете значение перечисления wdCollapseEnd , текст вставляется в начало следующего абзаца.

    rng.Collapse(Word.WdCollapseDirection.wdCollapseEnd);
    

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

Пример настройки на уровне документа

Сворачивание диапазона в настройке на уровне документа

  1. В следующем примере показан полный метод для настройки на уровне документа. Чтобы использовать этот пример кода, запустите его из класса ThisDocument в своем проекте.

    Word.Range rng = this.Paragraphs[1].Range; 
    
    rng.Collapse(Word.WdCollapseDirection.wdCollapseStart); 
    
    rng.Text = " New Text ";
    rng.Select();
    

Пример надстройки VSTO

Свернуть диапазон в надстройке VSTO

  1. В следующем примере показан полный метод надстройки VSTO. Чтобы использовать этот пример кода, запустите его из класса ThisAddIn в своем проекте.

    Word.Range rng = this.Application.ActiveDocument.Paragraphs[1].Range;
    
    rng.Collapse(Word.WdCollapseDirection.wdCollapseStart);
    
    rng.Text = " New Text ";
    rng.Select();