Область определения
и время жизни переменных - два важных понятия, которые используются при работе
с переменными. Они определяют, как и где применяются переменные.
Область определения
переменной определяет, где можно использовать переменную. В VBA имеется три уровня области определения:
1. Переменные уровня процедуры (личные
переменные) используются только в процедуре, в которой они описаны.
2. Переменные уровня модуля используются только
в процедурах модуля, в котором они описаны, но не в других модулях проекта.
3. Общие переменные используются во всех
процедурах любого модуля данного проекта.
Область определения
переменной определяется тем, где и как описать переменную:
·
Личная
переменная описывается с помощью инструкции Dim, размещенной в
процедуре.
·
Переменная
уровня модуля описывается с помощью инструкции Dim, размещенной в
разделе описаний модуля.
·
Общая
переменная описывается с помощью инструкции Public, а не
инструкции Dim, в разделе описаний модуля:
Public UserName As String
Личная переменная
сохраняет свое значение только при выполнении процедуры, в которой она определена.
При выходе из этой процедуры значение теряется, а при повторном запуске
необходимо снова инициализировать переменную.
Иногда удобнее
использовать переменную, которая не теряет свое значения при выходе из
процедуры, в которой она описывается. Для этого используется инструкция Static, которая имеет тот же синтаксис, что и инструкция Dim.
Static Counter As Integer
В этом случае
переменная Counter сохраняет свое значение, пока выполняются
другие процедуры.
|