Использование класса в программе

Как было сказано в начале главы, операции со всеми объектами VBA осуществляет только с использованием ссылок. Объявление ссылок на объекты было рассмотрено в разделе, посвященном переменным в VBA. Здесь будет рассмотрено лишь применение объекта созданного ранее класса Class1. Для создания ссылки на объект можно использовать следующее объявление:

Dim obj As Class1

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

Set obj = New Class1

Объявление переменной ссылки и создание объекта можно также совместить:

Dim obj As New Class1

Для доступа к свойствам и методам объекта используется точка, например:

obj.strTag = «Некоторый текст»

Set obj.ObjectRef = Nothing

MsgBox obj.ObjectType

obj.ShowInfo

Ниже приведен пример процедуры, которая использует реализованный класс

Class1:

Sub TestClass()

' Создание объекта

Dim obj As New Class1

' Установка свойств

Set obj.ObjectRef = New Collection

obj.strTag = "В этом объекте хранится ссылка на объект

Collection"

' Вызов метода

obj.ShowInfo

End Sub

В результате работы данной процедуры на экран будет выведено окно сообщения, показанное на рис. 1.4.

Рис. 1.4. Окно с информацией о свойствах объекта

Как можно заметить, в процедуре TestClass не происходит явного уничтожения ссылки на объект класса Class1. Дело в том, что ссылка obj – локальная переменная процедуры. А при выходе из процедуры данные всех локальных (не статических) переменных уничтожаются, в том числе удаляются и локальные ссылки на объекты.