В этом руководстве будет продемонстрировано использование констант VBA.
Константа похожа на переменную и объявляется аналогичным образом. Однако между ними есть большая разница!
Что такое константа
Константа - это значение, которое мы объявляем в нашем коде, и, следовательно, она зарезервирована в памяти нашего компьютера и хранится. Мы должны назвать нашу константу, и рекомендуется объявлять тип данных нашей константы. Когда мы объявляем тип данных, мы сообщаем программе, какой тип данных необходимо сохранить в нашей константе.
Мы будем использовать константу в нашем коде, и программа также будет обращаться к нашей константе. В отличие от переменной, фактическое значение которой может изменяться во время выполнения кода, постоянное значение никогда не меняется.
Типы данных, используемые константами
Константы используют тот же тип данных, что и переменные. Наиболее распространенные типы данных для констант:
• Нить - используется для хранения текстовых значений.
• Логический - используется для хранения значений ИСТИНА или ЛОЖЬ.
• Целое число - используется для хранения целочисленных значений.
• Двойной - используется для хранения чисел с десятичными знаками.
• Дата - используется для хранения дат.
Чтобы увидеть полный список всех типов данных, используемых переменными и константами в VBA, щелкните здесь.
В VBA мы должны использовать Const заявление, чтобы объявить Константу. Мы можем объявлять константы аналогично объявлению переменных - в Процедура Уровень, на Модуль Уровень и на Глобальный Уровень.
Объявление константы в процедуре
Чтобы объявить константу на уровне процедуры, мы объявляем ее внутри процедуры.
12345 | Sub CompanyDetails ()Const strCompany As String = "Поставщики ABC"Const strAddress As String = "213 Oak Lane, Highgate"MsgBox strCompany & vbCrLf & strAddressКонец подписки |
Когда мы запустим код, окно сообщения вернет постоянные значения.
Поскольку константа объявляется на уровне процедуры, мы можем объявить константу с тем же именем в другой процедуре.
Если мы запустим вторую процедуру, возвращается значение Constant, хранящееся в этой процедуре.
Программирование на VBA | Генератор кода действительно работает для вас!
Объявление константы в модуле
Если мы хотим, чтобы значение константы было доступно для всех процедур в модуле, нам нужно объявить константу в Модуль уровень.
Это сделает одну и ту же константу доступной для нескольких процедур ВНУТРИ этого модуля.
Если вы используете константу в другом модуле, произойдет ошибка.
Объявление констант на глобальном уровне
Вы можете объявлять константы на глобальном уровне, что означает, что вы можете использовать их во всех модулях, содержащихся во всем вашем проекте VBA.
Чтобы объявить константу глобальной константой, нам нужно поставить слово PUBLIC перед оператором объявления.
Например:
1 | Public Const strCompany as string = "ABC Suppliers" |
Это позволит использовать константу во всех модулях независимо от того, где она объявлена.
ПРИМЕЧАНИЕ: вы можете объявить общедоступную константу ТОЛЬКО на уровне модуля, вы НЕ МОЖЕТЕ объявлять общедоступную константу внутри процедуры.