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


Коллекция Sheets


Коллекция Sheets представляет коллекцию листов двух типов: рабочих листов и диаграмм, - так что каждый элемент коллекции может быть объектом одного из двух классов: Worksheet или Chart. Наряду с коллекцией Sheets существуют коллекции Worksheets и Charts. Они представляют коллекции рабочих листов и диаграмм, выделенных из коллекции Sheets. Но объекты, задающие эти коллекции, принадлежат классу Sheets и используют его свойства и методы. К их рассмотрению мы и переходим.

Когда создается или открывается рабочая книга, она содержит уже некоторое число листов. Так что коллекция Sheets не пуста в момент открытия книги. Для добавления новых листов в книгу используется знакомый нам метод Add:

Add(Before,After,Count,Type)

Все параметры являются необязательными. Первые два - Before и After задают позицию вставки листа - индекс листа, перед или после которого вставляется новый лист. Из этих параметров одновременно может быть задан только один. Если оба параметра опущены, вставка производится перед активным листом данной книги. Параметр Count определяет количество вставляемых листов (по умолчанию - 1). Последний параметр определяет тип вставляемых листов, задаваемый соответствующей константой: xlWorksheet, xlChart, xlExcel4MacroSheet, xlExcel4IntlMacroSheet (по умолчанию - xlWorksheet).

Замечание:

Рабочая книга имеет листы четырех типов. Но при вызове свойства Sheets объекта WorkBook возвращается объект класса Sheets с листами только двух типов. Чтобы получить листы других типов, нужно обратиться к другому свойству объекта WorkBook, например Excel4IntlMacroSheet, возвращающему также объект класса Sheets, но содержащий листы с так называемыми международными макросами, созданными под Excel4.

Следует обратить внимание на то, что:

  • в методе Add класса Sheets нет параметра, задающего ключ элемента. Однако фактически ключ задается. Его роль играет имя листа, заданное в виде свойства Name, имеющееся у листа каждого типа. Имя листа наряду с числовым индексом можно использовать для поиска листа в методе Item.
  • Из коллекции Sheets листы удаляются методом Delete, не имеющим параметров.


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