Собственные типы данных в VBA




Источник: https://www.lessons-tva.info/

 

В VBA можно создать собственные или пользовательские типы данных. Собственные типы данных целесообразно создавать тогда, когда в программе используется группа связанных элементов (переменных), относящихся к различным встроенным типам данных VBA. Пользовательские типы данных являются структурными типами данных. Пользовательский тип данных может объединить несколько связанных по смыслу переменных с различными базовыми типами данных в единую структуру. Для создания пользовательского типа данных можно применить оператор Type.

 

Для объявления собственного типа данных используется следующая конструкция:

Туре ИмяПользовательскогоТипа

ИмяЭлемента1 As Type1 ' первый элемент встроенного типа 1

ИмяЭлемента1 As Type2 ' второй элемент встроенного типа 2

.....................

ИмяЭлемента1 As TypeN ' N-ый элемент встроенного типа N

End Туре

 

В качестве примера рассмотрим пользовательский тип данных Student. Атрибуты сущности Student - это группа связанных элементов: фамилия, имя, отчество, пол, дата рождения, название группы.

 

Туре Student

ФамилияSt As String

ИмяSt As String

ОтчествоSt As String

ПолSt As String

ДатаРождSt As Data

НазвГруппыSt As String

End Туре

 

Обычно инструкция Туре предназначена для использования в области видимости всего проекта, поэтому целесообразно ее разместить в коде отдельного стандартного модуля. Кроме того, там же можно объявить глобальную переменную пользовательского типа, например strСтудент. Скриншот образца стандартного модуля, представлен на рис. 1.

 


Рис. 1.

 

Далее созданный пользовательский тип данных Student и глобальная переменная strСтудент могут быть применены в других модулях. Например, в модулях форм или стандартных модулях можно объявлять переменную Студент1 типа Student: Dim Студент1 As Student, где Student - это пользовательский тип данных. Таким образом, имя пользовательского типа данных используется при объявлении переменной так же, как и имена встроенных типов данных. Кроме того, в модулях можно применять непосредственно глобальную переменную для обращения к элементам, входящим в состав пользовательского типа данных, например strСтудент.ИмяST = "Петр".

 

Пользовательский тип данных и глобальную переменную можно объявить и непосредственно в исполняемых модулях. На скриншоте рис.2 представлен модуль, в котором объявлены пользовательский тип данных и глобальная переменная. В процедуре Sub Progress() применена переменная strСтудент.

 


Рис. 2.

 

Вводим переменную пользовательского типа strСтудент и ставим точку, открывается всплывающее меню со списком имен структурных элементов. Выбираем требуемый элемент и дважды на нем щелкаем. Таким образом, осуществляется обращение к элементам, входящим в состав пользовательского типа данных.

 

Прочие типы данных

Логический тип Boolean - логические значения (принимает одно из двух логических значений: True - False, 2 байта).

 

Data - информации о дате и времени (от 1 января 100 года до 31 декабря 9999 года, 8 байт).

 

Object - ссылка на объект (ссылка на объект, 4 байта).

 

Если для переменной, которая используется в процедуре VBA, не объявлен тип данных, то, по умолчанию, будет задан тип данных Variant.

 

Типы Variant

§ Variant (числа) - числовое значение (любое числовое значение, 16 байт);

§ Variant (символы) - строковое значение (любое символьное значение 22 байта + длина строки).

Далее рассмотрим более подробно область переменных в программах VBA.

Выражения в VBA

Источник: https://www.lessons-tva.info/

 

Выражения

Для выполнения вычислений и других манипуляций в VBA применяются выражения. Выражение - это любая комбинация операндов или элементов данных (чисел, констант, переменных, и других операндов) и знаков операций. Знаки операций - это символы, которые используются для соединения операндов в выражении. Операнды (operands) в программировании - это объекты, над которыми выполняются определенные действия (операции).

 

Операции в VBA - это действие, которые производятся над операндами. Знаки операций в выражении имеют свои приоритеты. Выражения могут состоять из одного операнда, а могут состоять из сложной комбинации операндов и знаков операций. Результатом вычисления выражения является значение, которое должно иметь допустимый в VBA тип данных. Необходимо отметить, что в одном выражении нельзя использовать несовместимые типы данных.

Операции

К операциям, которые используются для записи выражений в VBA, относятся: операции присваивания; математические операции; логические операции; операции сравнения (отношений); операции для работы со строками (строковые операции).

 

Оператор - это наименьшая исполняемая единица программного кода VBA. Различают операторы выражения, операторы объявления, операторы присваивания, условный оператор, цикла и т.д. Операторы выражений - это процедуры или строка в тексте исполняемого кода программы. Операторы выражений выполняют какие-либо действия в программе.

 

Оператор присваивания - это связанное знаком равенства выражение, в котором значение выражения, указанное справа, присваивается переменной, находящейся слева от знака равенства. Например, в операторе присваивания strСтудент.ИмяST = "Петр", имя "Петр" присваивается структурному элементу "ИмяST" переменной пользовательского типа данных "strСтудент".

 

Арифметические операторы представляют собой инструкции, в которых применяются арифметические операции. В VBA используются арифметические операции: сложение (+); вычитание (-); умножение (*); деление (/); деление без остатка (\); остаток от деления по модулю (mod); возведение в степень (^). Например, result=(7+12)*5^3

 

Логические операторы - это инструкции, в которых применяются логические операции в логических выражениях. Логические выражения имеют значения типа Boolean, которое принимает одно из двух логических значений: True (1) или False (0). При выполнении логических операций логическим переменным присваивается результат вычислений, указанный в правой части операторов. К логическим операциям относятся: and, or, nod, xor, eqv, imp (логическое и, или, нет, логическое исключающее или, логическая эквивалентность, логическая импликация). Например, (9>8) Or (2>5) ' Результат является True (истина), так как одно из условий является True.

 

Операторы сравнения или отношений. Результатом операций сравнения является значение Boolean, которое принимает одно из двух логических значений: True (истина) или False (ложь). В операторах могут применяться с определенным синтаксисом следующие знаки операций сравнения: равенство (=); больше чем (>) и меньше чем (<); не равно (<>); больше или равно (>=) и меньше или равно (<=); сcылка на объект (Is); подобие (Like). Например, оператор равенства A1=A2 ' если A1 равно A2, то True (истина), если A1 неравно A2, то False (ложь).

 

Строковые операторы. В строковом операторе существует знак операции & (конкатенация), который предназначен для объединения нескольких строк в одну строку. Например, strСтудент = "Петров" & "Петр" В переменную strСтудент будет помещена строка Петров Петр.



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2016-02-16 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: