Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
MVBA_2000.DOC
Скачиваний:
13
Добавлен:
08.11.2019
Размер:
599.55 Кб
Скачать

2.7.2. Особенности использования объектов.

Свойства и методы не используются по отдельности, они указываются вместе с объектом:

Объект.Свойство

Объект.Метод

Чтобы работать с объектами, требуется описать их.

Dim объект as класс

С помощью явного описания класса объекта ускоряется компиляция программы. При явном описании нового объекта можно использовать ключевые слова (операторы) Dim, Private, Public или Static.

Например:

Dim WorkFile as DataFile

Возможны следующие варианты неявного описания:

Dim WorkFile as Object

Dim WorkFile as Variant

Dim WorkFile

Однако явное описание типа указывает только на то, что объект WorkFile имеет тип DataFile. Чтобы действительно создать экземпляр класса DataFile необходимо использовать инструкцию SET:

Set объект=Newкласс

Например:

Dim WorkFile as DataFile

Set WorkFile=NewDataFile

Присваивание переменной ссылки на объект всегда выполняется с помощью инструкции SET:

Set ObjectVariable = SomeObject

Например, чтобы присвоить переменной Mtpl ссылку на объект шаблона WORD:

Set Mtpl=Template

Некоторые методы возвращают ссылки объекты. Например, метод New класса WorkBook(Excel) возвращает ссылку на объект рабочего листа:

Set MyNewWorksheet=ThisWorkbook.New

Для удаления как самого экземпляра класса, так всех относящихся к нему данных можно использовать инструкцию Set следующего вида:

Set объект = Nothing

Например:

Set WorkFile = Nothing

2.7.3. Коллекции в vba

Почти половина классов объектов в Office 2000 являются коллекциями. Это объясняется тем, что элементы большинства классов можно объединить в упорядоченную совокупность, получив тем самым новый класс- коллекцию элементов. Коллекция в BVA – упорядоченная совокупность элементов разного типа. Все элементы индексированы, но некоторые могут иметь и ключ, связанный с элементом. Размер коллекции заранее не фиксируется и может динамически изменяться. Любой существующий элемент коллекции может быть удален, но при этом, элементы перенумеровываются, и непрерывность последовательности индексов не нарушается. Новый элемент может быть добавлен в произвольное место коллекции.

Коллекции также являются объектами и имеют собственные свойства и методы. Составляющие коллекцию отдельные объекты называются элементами коллекции.

В VBA встроен класс Collection, позволяющий объединить в коллекции переменные различных типов, определенных в VBA.

У класса Collection одно свойство- Count и три метода: Add, Item, Remove.

Свойство Count возвращает число элементов коллекции, доступно только для чтения, имеет тип возвращаемого значения Long.

Метод Add (item, key, before, after) добавляет элементы в коллекцию. Параметр item является обязательным и задает добавляемый элемент. Параметр key –необязателен, он задается, когда элементу ставится в соответствие ключ. Два последних необязательных параметра уточняют позицию вставки. Если не задан ни один из этих параметров, элемент добавляется в конец коллекции.

Метод Remove (key) удаляет элементы коллекции. Удаляется

элемент с заданным ключом (или индексом). После удаления происходит перенумерация элементов и уменьшается счетчик Count.

Метод Item (key) возвращает значение элемента списка с заданным ключом (индексом).

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

Например:

Workbooks (“msl53.xls”).Close

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]