Как объявить глобальную переменную в vba?
В VBA, когда вы объявляете переменную как глобальную, вы можете использовать ее в любой процедуре любого модуля. Как следует из названия, вы можете использовать его по всему миру, а это значит, что он доступен повсюду.
Итак, если у вас есть глобальная переменная в «модуле1», и теперь вы хотите использовать ее в модуле2, вы можете использовать ее.
Объявить глобальную переменную в VBA
- Во-первых, вам нужно использовать ключевое слово «Global».
- После этого объявите имя переменной.
- Затем введите «as», чтобы получить список типов данных.
- В конце выберите тип данных, который вы хотите объявить для переменной.

Комментарии
- Когда вы объявляете глобальную переменную, вы должны объявить ее перед написанием процедуры в модуле, как вы можете видеть в примере выше.
- Вы также можете использовать ключевое слово Public, чтобы объявить переменную глобальной.
Понимание области действия переменных
Но чтобы иметь четкое представление о глобальной переменной, вам необходимо понимать область действия переменных. Существует три способа определения областей видимости переменных:
- Уровень процедуры : вы можете использовать переменную только в той процедуре, в которой вы ее объявляете.
- Уровень модуля (частный) : делает переменную доступной для всех процедур в модуле.
- Глобальный уровень (общедоступный) : делает переменную доступной для всех процедур во всех модулях.
Позвольте мне поделиться с вами кое-чем из реального мира, чтобы прояснить вам это. Я работаю в коворкинге и там, где я сижу на первом этаже трехэтажного здания, я в основном каждый день сижу на одном и том же месте.
Когда вы объявляете переменную с областью действия на уровне процедуры, вы можете использовать ее только внутри одной процедуры.
Точно так же, как я каждый день сижу на одном и том же месте на одном и том же этаже. Но позвольте мне сказать вам больше: хотя я сижу на первом этаже, я также могу занять любое место на других этажах.
А на снимке ниже мы объявили переменную «iCon» в верхней части модуля, используя ключевое слово Private перед запуском любой процедуры, и я использовал ее во всех трех кодах.

Думайте об этом модуле как о здании, в котором есть разные этажи (Процедуры), и поскольку вы уже объявили переменную в начале модуля, вы можете использовать любую из процедур этого модуля. Это называется частной областью действия на уровне модуля.
И последнее: у моего офиса есть филиалы в разных городах по всей стране, и если я поеду туда, я могу пойти в эти офисы и использовать любое место, если захочу. Поэтому, если в вашей книге есть разные модули, вы можете использовать одну переменную во всех этих модулях, объявив ее как Public/Global.