Шаг 112.
VBA в MSExcel.
Основы программирования на VBA. Тип данных, определяемый пользователем

    На этом шаге мы рассмотрим способы задания пользовательских типов.

    Наряду с массивами, представляющими нумерованный набор элементов одного типа, существует еще один способ создания структурного типа — тип, определенный пользователем, или в привычной терминологии для программистов запись. Запись — это совокупность нескольких элементов, каждый из которых может иметь свой тип. Элемент записи называется полем. Запись является частным случаем класса, в котором не определены свойства и методы.

    Синтаксис:

  [Private | Public] Type ИмяПеременной 
    ИмяЭлемента [([Индексы])] As тип 
    [ИмяЭлемента [([Индексы])] As тип]
    .   .   .
  End Type

    Аргументы:

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

' Тип, определенный пользователем
Type Студент
  ' Элементы типа данных
  Фамилия As String * 20
  Имя As String * 20
  Отчество As String * 20
  НомерЗачетки As Integer
  Группа As String * 10
  Курс As Long
  ДатаРождения As Date
End Type
Sub ВводДанных()
  ' Описание переменной Экономист
  Dim Экономист As Студент
  ' Присвоение значений элементам переменной Экономист
  With Экономист
    .НомерЗачетки = 12003
    .Группа = "Менеджмент"
  End With
  Dim СтудентЭкономист(1 To 20) As Студент
  ' Присваивает значения элементам первой компоненты массива
  CтудентЭкономист(1).Фамилия = "Промокашкин"
  CтудентЭкономист(1).Имя = "Евстигней"
  СтудентЭкономист(1).Отчество = "Поликарпович"
End Sub

    Можно создавать массив, содержащий элементы собственного типа. Например, следующий массив состоит из сведений о 20 студентах.

  Dim СтудентЭкономист(1 To 20) As Студент
  ' Присваивает значения элементам первой компоненты массива
  CтудентЭкономист(1).Фамилия = "Промокашкин"
  CтудентЭкономист(1).Имя = "Евстигней"
  СтудентЭкономист(1).Отчество = "Поликарпович"

    На следующем шаге мы рассмотрим операции VBA.




Предыдущий шаг Содержание Следующий шаг