Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лекции по VBA.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
1.34 Mб
Скачать

Константы vba

Константа это значение в программе VBA, которое не изменяется.

Константы можно использовать как аргументы для процедур, в математических операциях, операциях сравнения и пр.

Константы бывают литеральными и именованными.

Литеральная константа - это константа (число, строковое выражение, дата), расположенная непосредственно в коде.

НАПРИМЕР:

X = Y + 2

Здесь число 2 является литеральной константой.

Именованная константа, как правило, объявляется в начале модуля или процедуры (аналогично переменной) и предназначена для удобства чтения и понимания программного кода. Например, более целесообразно использовать в коде программы именованную константу Pi (которой присвоено значение 3,14), чем литеральную константу 3,14. Согласитесь, что выражение S = Pi * R* R Более "понятно", чем S = 3.14 * R * R.

Другим веским фактором в пользу именованных констант служит то обстоятельство, что изменив значение константы один раз, эти изменения мгновенно произойдут во всем программном коде. Литеральную константу надо искать и изменять в теле кода "вручную", на что может уйти довольно значительное время.

Однако не стоит использовать именованные константы сплошь и рядом, т.к. код может стать абсолютно нечитабельным, а вы сами запутаетесь, что и где находится.

ЛИТЕРАЛЬНЫЕ КОНСТАНТЫ

Существует несколько правил, которые необходимо соблюдать при написании литеральных констант.

Константы String

  • Строковые константы должны быть заключены в двойные кавычки (");

  • Пустая строковая константа (так называемая "нулевая строка") обозначается двумя двойными кавычками, между которыми ничего нет ("");

  • Строковая константа обязательно должна вся находиться на одной строке.

Численные константы

  • Численные константы могут содержать любой из численных типов VBA;

  • Численные константы должны состоять только из числовых символов от 0 до 9;

  • Численная константа может начинаться со знака (-) и может содержать десятичную точку;

  • Можно использовать экспоненциальное представление для численных констант;

  • Никакие другие символы или знаки не допускаются в численных константах.

Константы Date

Константы Date необходимо помещать между знаками фунта (#), при этом формат задания даты может быть различным:

#3-5-99#

#February 13, 2008 10:15am#

#Jun-20-2005#

# 9 April 1998#

VBA переформатирует дату к следующему виду: #4/9/1998#

Если пропустить знак фунта (#) при записи литеральной константы даты, VBA не сможет правильно интерпретировать константу даты как дату;

Нельзя заключать литеральные константы даты в двойные кавычки, т.к. в этом случае VBA распознает такую константу как строковую.

Константы Boolean

Существуют только два вида констант типа Boolean: True, False. При этом их нельзя брать в кавычки или сокращать.

Именованные константы

При создании и объявлении именованных констант надо придерживаться тех же принципов, что и при работе с переменными.

Для объявления именованной константы предназначено ключевое слово Const

СИНТАКСИС:

Const name_1 = value_1 [opetator name_2..] [, name_3 =..] 

Name_N - любой допустимый идентификатор имени константы;

Value_N - любое значение данных;

Opetator - арифметическая или операция сравнения между двумя именами ранее описанных констант.

Область действия именных констант аналогична переменным, т.е. константы бывают процедурного и модульного уровня.

Поскольку одной из главных целей использования именованной константы является предотвращение повторения или дублирования литеральных констант, как правило, бывает необходимо, чтобы именованные константы были доступны всем процедурам в модуле. Поэтому целесообразно помещать объявления констант на модульном уровне, чтобы у них была наибольшая область действия.