Шаг 20 - Пользовательские классы

В VBA есть свои классы, но можно создавать и самим. Для этого в проект необходимо добавить модуль класса. Это можно сделать шелкнув правой кнопкой мыши на проекте и выбрав пункт меню вставить -> модуль класса.

20_1.gif (8757 b)

В результате у Вас появится окно для кода класса, и в окне просмотра проекта появится значок класса. Вероятнее всего с именем Класс1. Объявим переменные для внутреннего использования. Private говорит о том, что использоваться они будут только внутри класса.

Private NamePiple As String
Private DatePiple As String

Теперь создадим функцию GetPipleName. Пишите ниже:

Public Sub GetPipleName()
	NamePiple = InputBox("Enter Name - ")
End Sub

Теперь свойства для получения имени. Пишите ниже:

Property Get PipleName() As String
	PipleName = NamePiple
End Property

И для установки тоже. Пишите ниже:

Property Let PipleName(s As String)
	NamePiple = s
End Property

Закрывайте редактор и открывайте любой макрос для редактирования, если его нет создайте. Начинайте вводить код, как на рисунке ниже. И о чудо !!! Наш класс имеет те же возможности, что и встроенный класс VBA, он показывает свойства.

20_2.gif (2870 b)

Настало время испытать его в действии:

Sub Test()
	Dim vars As New Класс1
	vars.GetPipleName
	MsgBox vars.PipleName
	vars.PipleName = "VBA"
	MsgBox vars.PipleName
End Sub

По удобству и простоте это круче C++ и MFC и так далее. Кроме того класс легко сохранить для дальнейшего использования. Вообщем класс. Просто оцените эту возможность даже если вы читате просто так.


Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Каев Артем.