Объект Shape представляет любой графический объект, размещенный в верхнем слое рабочего листа или диаграммы. Все объекты Shape рабочего листа представлены семейством Shapes, которое может содержать такие разные графические объекты, как растровые изображения и другие виды рисунков, прямоугольники, линии, объекты WordArt и даже элементы управления. За исключением элементов управления пользователь может создавать все объекты Shape, используя Панель рисования.
Каждый тип объекта Shape имеет свой собственный уникальный набор свойств и методов, но все объекты имеют и набор общих свойств и методов. Этот набор, используемый всеми объектами, представлен ниже.
Свойства объекта Shape:
– Left, Top, Width, Height – определяют положение и размер фигуры на рабочем листе или диаграмме;
– Name – текстовая строка, используемая для идентификации объекта (может использоваться в качестве индекса в семействе); это свойство можно задать «вручную», вписав значение в поле «Имя» строки формул Excel;
– Type – константа, идентифицирующая тип объекта (например, msoLine, msoPicture и т.п.);
– Fill – возвращает объект FillFormat, содержащий свойства для задания цвета, типа штриховки и текстуры объекта;
– Line – возвращает объект LineFormat, содержащий свойства для настройки цвета, толщины и типа граничных линий объекта;
– Shadow – возвращает объект ShadowFormat, содержащий свойства для настройки тени объекта;
– TextFrame – возвращает объект, содержащий подобъекты для задания и форматирования текста, находящегося в объекте Shape;
– Visible – определяет, будет и объект виден пользователю;
– OnAction – служит ля запоминания имени подпрограммы VBA, которая будет запущена, если щелкнуть на объекте мышью.
Методы объекта Shape:
– Copy – копирует объект в буфер обмена (Clipboard);
– Cut – копирует объект в буфер обмена (Clipboard) и удаляет его с рабочего листа или диаграммы;
– Flip – располагает объект горизонтально или вертикально;
– Delete– удаляет объект;
– IncrementLeft – сдвигает объект по горизонтали;
– IncrementTop – сдвигает объект по вертикали;
– IncrementRotation – поворачивает объект.
– Методы семейства Shapes:
– AddShape – добавляет объект в семейство;
– AddPicture – добавляет в семейство объект типа рисунка;
– AddLabel – добавляет в семейство объект типа надписи.
Объект ShapeRange представляет произвольную группу фигур (такая группа получается при множественном выделении), но включенные в него объекты могут быть не выделены, таким образом, объект ведет себя как семейство. Этот объект можно создать с помощью семейства Shapes, вызвав метод Range и передав ему в качестве параметра массив имен объектов Shape. Созданным семейством можно манипулировать как одним объектом. Все объекты группы можно обработать в цикле For Each.