Основы офисного программирования и язык VBA


Объекты Selection - часть 2


Public Sub WorkWithSelection() Dim myr As Range Dim i As Byte 'Добавляем новый документ Documents.Add With ActiveDocument 'Добавляем 7 абзацев в текст созданного документа For i = 1 To 7 .Paragraphs.Last.Range.Text = "Абзац " & i .Paragraphs.Add Next i 'Используется свойство Range Set myr = .Paragraphs(1).Range 'Выделен первый абзац. Создаем объект Selection myr.Select 'Действия с объектом Selection 'Стягивание в начало абзаца - точку вставки Selection.MoveLeft 'Расширение на один абзац вправо, снова выделяя первый абзац Selection.MoveDown Unit:=wdParagraph, Count:=1, Extend:=wdExtend 'Передвинемся к началу третьего абзаца Selection.Move Unit:=wdParagraph, Count:=2 'Три абзаца с третьего по пятый выделяются курсивом Selection.MoveDown Unit:=wdParagraph, Count:=3, Extend:=wdExtend Selection.Font.Italic = True End With End Sub

Пример 1.8.

Первоначально объект Selection создается как результат вызова метода Select объекта Range. После этого можно работать с этим объектом. При изменении диапазона объекта Selection приходится работать не с параметрами Start и End, как это делается для объектов Range, а использовать специальные методы Move, часть из которых мы применили в нашем примере. Вот их краткое описание:

  • метод MoveLeft сжимает область выделения до точки и передвигает ее в начало диапазона. В примере точка вставки перемещается к началу первого абзаца;
  • метод Move сжимает область выделения до точки и передвигает ее в нужное место. В примере точка вставки перемещается на два абзаца;
  • метод MoveDown расширяет область выделения. Параметр Unit указывает единицы, в которых ведется отсчет при расширении области (у нас - в абзацах); параметр Count задает число этих единиц. Параметр Extend указывает, нужно ли расширение или перемещение области, сжатой в точку вставки.




Начало  Назад  Вперед



Книжный магазин