Переменные, константы в Visual Basic for Application.

Переменная – это имя, которое разработчик программы дает области компьютерной памяти, используемой для хранения данных какого-либо типа. Переменная представляет числа, текстовые данные или другую информацию, которая точно не известна во время написания оператора, но будет в наличии и доступна при выполнении этого оператора.

Идентификатор – это имя переменной. При выборе имени переменной необходимо соблюдать следующие правила:

имя переменной должно начинаться с буквы алфавита;

после первой буквы имя переменной может состоять из любой комбинации цифр, букв или символов подчеркивания;

имена переменных не могут содержать символов, используемых для математических операций, а также знака точки и пробела;

имя переменной не должно превышать 255 символов;

имя переменной не должно дублировать определенные ключевые слова vba.

Самым простым способом создания переменной является использование ее в операторе VBA. VBA создает переменную и тут же резервирует ячейку памяти для данной переменной.

Сохранение значения данных в переменной называется присваиванием переменной.

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

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

Явно объявить переменную можно как в начале блока, так и в том произвольном месте, где возникла необходимость использовать новую переменную. При объявлении переменной определяются ее тип и область видимости – область, где имя переменной видимо и, значит, возможен доступ к ее значению. Переменные можно объявлять на двух уровнях – уровне процедуры и уровне модуля.

Для объявления переменных используются операторы Dim, Public, Private и Static. Первый можно использовать на обоих уровнях, Public, Private – на уровне модуля, Static – только на уровне процедуры.

Объявление простых переменных имеет следующий синтаксис:

Dim <имя переменной1, имя переменной2,…> As <имя типа>

или

Dim <имя переменной1> As <имя типа1>, <имя переменной2> As <имя типа2>,<имя переменной3> As <имя типа3>, …

Константа – это значение в программе VBA, которое не меняется. Существует несколько типов констант.

Именованные константы – константы, имеющие заданное имя; это имя имеет конкретное неизменяемое значение.

В отличие от переменной, необходимо всегда явно объявлять именованные константы, используя ключевое слово Const.

 

Арифметические операции и операции сравнения в Visual Basic for Application.

Знак Синтаксис Имя/Описание
+ N1 + N2 Сложение. Прибавляет N1 к N2
N1 - N2 Вычитание. Вычитает N2 из N1
* N1 * N2 Умножение. Умножает N1 на N2
/ N1 / N2 Деление. Делит N1 на N2.
\ Nl \ N2 Целочисленное деление. Делит N1 на N2, отбрасывая любую дробную часть так, чтобы результат был целым числом.
Mod N1 Mod N2 Деление по модулю. Делит N1 на N2, возвращая только остаток операции деления.

 

N1 ^ N2 Возведение в степень. Возводит N1 в степень N2.

Операции сравнения

Операции сравнения иногда также называют операциями отношения (relational operators). Чаще всего операции сравнения используются для того, чтобы задать критерии для принятия решения или сформулировать описание условий, при которых группа команд должна быть повторена (организация циклов).

Результатом любой операции сравнения является значение типа Boolean: Trueили False. Операции сравнения используются для сравнения литеральных, константных или переменных значений любого сходного типа

Операция/ Оператор Синтаксис Наименование/описание
^ Е1= Е2 Равенство. True, если El равно Е2, иначе – False
< El < Е2 Меньше, чем. True, если El меньше, чем Е2, иначе – False
< <= Меньше, чем или равно. True, если Е1 меньше или равно Е2, иначе – False

>> Больше, чем. True, если Е1 больше, чем Е2, иначе – False

> >= Больше, чем или равно. True, если Е1 больше или равно Е2, иначе – False

¹ <> Не равно. True, если Е1 не равно Е2, иначе – False