В общем случае при описании переменной объявляется ее имя и тип в начале программы или до момента использования этой переменной в программе.
VBA включает множество способов описания переменных:
¨ явное описание с помощью оператора описания.
Например, Dim а As Integer;
¨ неявное описание. Переменная с определенным суффиксом используется в программе без предварительного объявления имени и типа. Например:
a%=25 переменная с именем a - объявляется типа integer;
в! =3.45 переменная с именем в- объявляется типа single;
¨ описание по умолчанию или тип Variant. Если переменная не описана, то ей автоматически присваивается тип Вариант и для ее хранения выделяется максимум байтов памяти (16). Если явно описано только имя переменной (без указания типа), то тип автоматически устанавливается - Variant.
Синтаксис оператора явного описания переменных
Dim список Имен Переменных [ As тип]
Dim – ключевое слово объявления.
Переменные в списке отделяются запятыми.
Квадратные скобки указывают на необязательность параметра.
|
|
Например: Dim a,b,c As Integer; Dim z As String
Для предыдущего примера можно записать: Dim a,b,c,z - при этом тип переменных становится типом Variant. Этогласит о том, что переменным a,b,c,z могут быть присвоены значения любых типов данных.
Примечание. Описанные именаконтролируются компилятором, если в разделе глобальных объявлений (General, Declarations) окна кода редактора записать оператор Option Explicit. Автоматически оператор устанавливается командами меню: Инструменты (Tools), Опции. На вкладке Editor установить флажок - требуются объявления переменных – Require Variable Declaration.
Синтаксис оператора описания констант
Const имя Константы [As тип ] = значение
Например: Const Pi As Single = 3.141596
Const G = 9.8
Области действия переменных
Область действия переменной - часть программного кода, в котором можно использовать переменную.
В VBA есть три области действия переменной:
Локальная область - переменная действует в текущей процедуре и описывается в ней с помощью оператора Dim. Например, Dim а As integer.
Область модуля формы - распространяется на весь код программы формы и описывается с помощью оператора Private в разделе глобальных объявлений (секция General, Declarations). Например, Private a As integer.
Глобальная область - переменная действует на весь проект и описывается оператором Public в разделе глобальных объявлений стандартного модуля (секция General, Declarations). Например, Public a As integer.