ВУЗ:
Составители:
50
2.4. Переменные и константы VBA
Все используемые в программе переменные и константы имеют различный уро-
вень видимости (доступности). Без описания переменные имеют уровень процедуры
(Sub), то есть их значения могут использоваться только внутри этой подпрограммы.
При переходе в другую подпрограмму переменная с тем же именем – это уже со-
всем другая переменная, и ее значение из
другой подпрограммы не сохранилось.
Чтобы использовать значения переменных, вычисленные в другой подпрограмме,
их нужно объявлять на уровне модуля или проекта.
Переменную уровня модуля можно использовать в любой подпрограмме или
функции того модуля, где эта переменная была определена. Чтобы сделать пере-
менную доступной на уровне модуля, поместите ее определение перед всеми под-
программами и функциями, как показано в примере:
Dim Var2 As String
Sub Pro1()
Var2 = "Привет Томску из Ханты-Мансийска!"
Pro2
End Sub
Sub Pro2()
MsgBox Var2
End Sub
В подпрограмме Prо2 в окне появляется переменная Var2, значение которой
было присвоено в Рrо1, поскольку Var2 была описана на уровне модуля и сохраняет
значение во всех его программах. Если убрать первую строчку
этого примера, то
окно окажется пустым, поскольку Var2 будет считаться переменной уровня проце-
дуры Рrо1 и будет недоступна в других процедурах модуля, например, в Pro2.
Переменная уровня проекта (или общего уровня) доступна и сохраняет свое
значение в любом модуле проекта, содержащего ее описание. Чтобы сделать пере-
менную доступной на уровне проекта, объявите ее с ключевым словом Public в лю-
бом модуле проекта, перед всеми подпрограммами и функциями. Мы написали две
процедуры и разместили их в различных модулях. Одна из них присваивает значе-
ние переменной уровня проекта, а другая выводит его в информационном окне:
‘Это Module 1
Public Var3 As String
Sub Pro3()
Var3 = "Привет Ханты-Мансийску из Томска! "
End Sub
‘Это Module 2
Sub Pro4()
Страницы
- « первая
- ‹ предыдущая
- …
- 49
- 50
- 51
- 52
- 53
- …
- следующая ›
- последняя »
