Тип данных, определенный пользователем
Наряду с массивами, представляющими нумерованный набор элементов одного типа, существует ещё один способ создания структурного типа — тип, определенный пользователем, или в привычной терминологии для программистов запись. Запись — это совокупность нескольких элементов, каждый из которых может иметь свой тип. Элемент записи называется полем. Запись является частным случаем класса, в котором не определены свойства и методы.
Синтаксис:
[Private | Public] Туре ИмяПеременной
ИмяЭлемекта [([Индексы])] As тип
[ИмяЭлемента [([Индексы])] из тип]
…
End Type
Аргументы:
Public | Используется для описания определяемых пользователем типов, которые доступны для всех процедур во всех модулях всех проектов |
Private | Используется для описания определяемых пользователем типов, которые доступны только в модуле, в котором выполняется описание |
ИмяКонстанты | Имя типа, определяемого пользователем |
ИмяЭлемента | Имя элемента, определяемого пользователем типа |
Индексы | Размерности элемента, являющегося массивом. Для задания массива, размеры которого могут изменяться, указываются только скобки. Аргумент Индексы использует следующий синтаксис: [Нижний То] Верхний [,[Нижний То] Верхний] . . |
Тип | Тип данных элемента; поддерживаются типы: Byte, Boolean, Integer, Long, Currency, Single, Double, Date, String (для строк переменной длины), String* длина (для строк фиксированной длины), Object, Variant и другой, определяемый пользователем тип |
В данном примере инструкция туре используется для определения типа данных (только на уровне модуля). При появлении в модуле класса инструкции Туре должно предшествовать ключевое слово Private.
‘
‘ Тип, определенный пользователем
‘
Туре Студент i
‘
' Элементы типа данных i
‘
Фамилия As String * 20 Имя As String * 20
Отчество As String * 20
НомерЗачетки As Integer Группа As String * 10 Курс As Long ДатаРождения As Date End Type
Sub ВводДанных()
‘
‘ Описание переменной Экономист
‘
Dim Экономист As Студент
‘
‘Присвоение значений элементам переменной Экономист i
‘
With Экономист
.НомерЗачетки = 12003
.Группа = "Менеджмент"
End With
End Sub
Можно создавать массив, содержащий элементы собственного типа. Например, следующий массив состоит из сведений о 20 студентах.
Dim СтудентЭкономист(1 to 20) As Студент
‘Присваивает значения элементам первой компоненты массива t
СтудентЭкономист(1). Фамилия = "Промокашкин"
СтудентЭкономист{1). Имя = "Евстегней"
СтудентЭкономист(1). Отчество = "Поликарпович"
- 3 Семестр
- Оглавление
- Язык программирования Visual Basic for Application Основные средства и возможности vba Основные элементы vba
- Основы программирования на vba Типы данных
- Описание переменных
- Допустимые имена
- Инструкция Def Тип
- Массивы
- Динамические массивы
- Функции и процедуры для работы с массивами
- Константы
- Тип данных, определенный пользователем
- Операции vba
- Приоритеты операций
- Встроенные функции vba
- Математические функции
- Функции проверки типов
- Функции преобразования форматов
- Функции обработки строк
- Функции времени и даты
- Функции выбора
- Функции, возвращающие строки
- Встроенные диалоговые окна
- Инструкции vba
- Оператор присвоения
- Перенос строки
- Комментарии
- Расположение нескольких операторов на одной строке
- Операторы перехода и выбора
- Операторы повтора
- Условная компиляция
- Процедура
- Переход в подпрограмму и возвращение из подпрограммы
- Вызов процедуры
- Рекурсивные процедуры
- Область определения переменной
- Время жизни переменной
- Процедуры обработки ошибок и отладка программ Разработка процедур, предотвращающих появление ошибок
- Перехват и обработка ошибок
- Свойства объекта Err
- Методы объекта Err
- Отладка программ
- Ошибки компиляции
- Ошибки выполнения
- Логические ошибки
- Инструкция Option Explicit
- Пошаговое выполнение программ
- Точка останова
- Вывод значений свойств и переменных
- Работа с файлами Типы файлов в vba
- Открытие и закрытие файла
- Ввод данных в файл последовательного доступа
- Вывод данных из файла последовательного доступа
- Работа с файлом произвольного доступа
- Наиболее употребляемые инструкции и функции при работе с файлами
- Объект FileSearch
- Элементы управления и пользовательская форма Элементы управления
- Режим конструктора
- Установка свойств элемента управления
- Редактор кода
- Пользовательская форма UserForm
- Семейство Controls
- Создание пользовательской формы
- Общие свойства элементов управления
- Соглашения об именах
- Общие методы и события элементов управления
- Объект DataObject
- Надпись
- Заполнение списка
- Выбор нескольких элементов из списка
- Поле со списком
- Полоса прокрутки и счетчик
- Переключатель
- Флажок и выключатель
- Ссылки на ячейки и диапазоны
- Набор страниц
- Набор вкладок
- Дополнительные элементы управления
- Последовательность выбора элементов управления
- Инициализация и отображение диалогового окна
- Закрытие диалогового окна
- Отображение встроенных диалоговых окон
- Открытие документа
- Объект Application
- Свойства объекта Application
- Методы объекта Application
- События объекта Application
- Объект Workbook и семейство Workbooks
- Свойства объекта Workbook и семейства Workbooks
- Методы объекта Workbook и семейства Workbooks
- События объекта Workbook и семейства Workbooks
- Объект Worksheet и семейство Worksheets
- Свойства объекта Worksheet и семейства Worksheets
- Методы объекта Worksheet и семейства Worksheet
- События объекта Worksheet
- Объекты Range и Selection
- Адресация ячеек
- Задание групп строк и столбцов с помощью объекта Range
- Связь объекта Range и свойства Cells
- Свойства и методы объекта Range
- Программирование панели инструментов
- Объект CommandBar и семейство CommandBars
- Семейство CommandBarControls и объект CommandBarControl
- Пример создания панели инструментов пользователя
- Пример создания строки меню пользователя
- Создание пользовательской панели инструментов вручную
- Удаление элемента управления из панели инструментов вручную
- Удаление пользовательской панели инструментов вручную
- Назначение вручную макроса кнопке
- Изменение и создание вручную изображения на кнопке
- Программирование средств для работы со справочной информацией
- Структура помощника
- Типы помощника
- Свойства объекта Assistant
- Объект Balloon