Шаг 100.
VBA в MSExcel.
Работа с графическими объектами. Семейства Shapes и ShapeRange

    На этом шаге мы рассмотрим назначение, основные свойства и методы этих семейств.

    Объект Shape — это любой графический объект, размешенный на рабочем листе или диаграмме. Семейство Shapes представляет собой семейство всех графических объектов рабочего листа. Семейство ShapeRange содержится в семействе Shapes и является конкретным набором графических объектов рабочего листа. В крайних случаях семейство ShapeRange может состоять только из одного объекта или совпадать с семейством Shapes, которое его содержит.

    Семейство Shapes обычно применяется для создания нового объекта Shape. Когда надо работать (т.е. задавать или изменять свойства) с отдельным элементом семейства Shapes обычно используют объект Shape, а когда следует оперировать с набором элементов этого семейства — семейство ShapeRange.

    Большинство свойств объекта Shape или семейства ShapeRange определяются в два этапа. Сначала задается свойство, которое возвращает объект, содержащий устанавливаемые свойства, а уж потом для этого объекта определяется требуемое свойство. Например, если надо изменить тип линии, то у выбранного объекта семейства ShapeRange используется свойство Line, которое возвращает объект LineFormat, содержащий свойства для установки цвета, толщины и типа граничных линий объекта Shape. Получив таким образом объект LineFormat, при помощи его свойств устанавливается конкретный тип линии.

  ActiveSheet.Shapes.AddLine(104.25, 135.75, 230.25, 146.25).Select
  Selection.ShapeRange.Line.Weight = 3# 
  Selection.ShapeRange.Line.Visible = msoTrue 
  Selection.ShapeRange.Line.Style = msoLineSingle

    Перечислим основные свойства объекта Shape, возвращающие объект Shape конкретного типа.

Таблица 1. Свойства, возвращающие объект конкретного типа
Свойство Назначение
Fill Возвращает объект FillFormat, который содержит свойства для задания цвета, типа штриховки и текстуры объекта Shape
Line Возвращает объект LineFormat, содержащий свойства для установки цвета, толщины и типа граничных линий объекта Shape
Shadow Возвращает объект ShadowFormat, содержащий свойства для настройки тени объекта Shape
TextFrame Возвращает объект TextFrame — текстовое поле

    Приведем несколько наиболее часто употребляемых общих свойств объектов Shape.

Таблица 2. Общие свойства объектов Shape
Свойство Назначение
Visible Устанавливает видимость объекта
Left, Top, Width, Height Задают координаты левого верхнего угла объекта, его ширину и высоту
OnAction Устанавливает имя процедуры, которая будет запущена при выборе объекта

    Приведем несколько наиболее часто употребляемых общих методов объектов Shape.

Таблица 3. Общие методы объектов Shape
Метод Назначение
Сору Копирует объект Shape в буфер обмена
Cut Копирует объект Shape в буфер обмена с удалением
Delete Удаляет объект Shape
Paste Вставляет объект Shape из буфера обмена
IncrementLeft, IncrementTop Сдвигает объект Shape по горизонтали и вертикали соответственно на заданное в аргументе количество пунктов. Синтаксис:
  IncrementLeft (Increment) 
  IncrementTop (Increment)
IncrementRotation Поворачивает объект Shape на заданный в аргументе угол. Синтаксис:
  IncrementRotation (Increment)

    На следующем шаге мы остановимся на объекте Shape.




Предыдущий шаг Содержание Следующий шаг