Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Объявление переменных_VBA_форматировать.doc
Скачиваний:
26
Добавлен:
22.08.2019
Размер:
60.93 Кб
Скачать

5.5. Типы данных, определяемые пользователем

Выше упоминалось, что VBА позволяет создавать собственные типы данных или, как их называют, типы данных, определяемые пользователем. Они являются типами структурного вида. Эти типы создаются на основе базовых типов VBА. Возможность создавать свои типы данных полезна в тех случаях, когда программа работает с группой элементов различного базового типа, но связанных между собой по смыслу.

Создание нового типа осуществляется следующей синтаксической конструкцией:

Туре ИмяТипа

Имя1 As Тип 'Структурный элемент1 создаваемого типа  ‘базовый тип

Имя2 As Тип 'Структурный элемент2 создаваемого типа  'базовый тип

ИмяN As Тип 'Структурный элемент N создаваемого типа  'базовый тип

End Type

где:

• Туре  ключевое слово, которое указывает, что создается новый пользовательский тип данных:

• ИмяТипа  имя создаваемого типа (идентификатор);

• ИмяN As Tun  описание структурного элемента N создаваемого типа;

• End Type  ключевые слова, завершающие описание нового типа.

Например, пользовательский тип данных, предназначенный для хранения фамилии, даты рождения и даты поступления на работу сотрудника, может быть объявлен следующим образом:

Туре Сотрудник

strФамилия As String ‘Структурный элемент для хранения фамилии

ДатаРождения As Date 'Структурный элемент для даты рождения

ДатаПоступления As Date 'Структурный элемент для хранения

'даты поступления на работу

End Type

Созданный тип данных может быть использован в программе. Для этого в разделе объявлений программы надо объявить переменную созданного типа. Объявление переменной выполняется так же, как и в случае базовых типов:

Dim udtСлужащий As Сотрудник 'Объявлена переменная

'пользовательского типа Сотрудник

Обращение к элементу пользовательского типа имеет синтаксис:

ИмяПеременной.Имя Структурного Элемента

Например:

udtСлужаший. strФамилия=" Иванов