MyTetra Share
Делитесь знаниями!
Литеральные, именованные и внутренние константы VBA
Время создания: 31.07.2019 22:37
Текстовые метки: константы
Раздел: Разные закладки - VBA
Запись: xintrea/mytetra_db_adgaver_new/master/base/1518971518n4c8nrzm9i/text.html на raw.githubusercontent.com

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

Литеральные константы

 Значения литеральных констант записываются непосредственно в программный код.

1.Sub Circle_Area_01()

2.Dim CircleArea As Single, Radius As Single

3.Radius = 5

4.CircleArea = 3.1415 * (Radius * Radius)

5.MsgBox CircleArea, , "Площадь круга"

6.End Sub

Здесь 3.1415 - это численная литеральная константа, а "Площадь круга" - строковая литеральная константа. Константы можно изменять только редактированием исходного кода VBA.

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

 Именованные константы перед их использованием необходимо явно объявлять, используя ключевое слово Const.

 

1.Sub Circle_Area_02()

2.Const Pi = 3.1415

3.Const Caption = "Площадь круга"

4.Dim CircleArea As Single, Radius As Single

5.Radius = 5

6.CircleArea = Pi * (Radius * Radius)

7.MsgBox CircleArea, , Caption

8.End Sub

Здесь Pi - это численная именованная константа, а Caption - строковая именованная константа. 

Именованные константы используются для повышения читабельности программного кода процедур, а также для более простого обновления и сопровождения процедур и программ. Всегда проще и быстрее изменить значение один раз в начале процедуры, чем искать это значение по всему коду и изменять многократно. 

Создание именованных констант

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

Задание типа константы

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

1.Sub Circle_Area_03()

2.Const Pi As Single = 3.1415

3.Const Caption As String = "Площадь круга"

4.Dim CircleArea As Single, Radius As Single

5.Radius = 5

6.CircleArea = Pi * (Radius * Radius)

7.MsgBox CircleArea, , Caption

8.End Sub

Здесь Pi - это именованная константа, имеющая тип данных Single, а Caption - именованная константа, имеющая тип данных String.

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

Область действия констант

Именованные константы можно объявлять как в процедурах (между ключевыми словами Sub и End Sub), при этом константа будет иметь область действия процедурного уровня, так и в области объявлений, в начале модуля, тогда константа будет иметь область действия модульного уровня. Главной целью использования именованных констант является предотвращение повторения значений литеральных констант в процедурах, поэтому целесообразно, чтобы именованные константы имели наибольшую область действия и были доступны всем процедурам в модуле.

01.Const Pi As Single = 3.1415

02.Sub Circle_Area()

03.Const Caption As String = "Площадь круга"

04.Dim CircleArea As Single, Radius As Single

05.Radius = 5

06.CircleArea = Pi * (Radius * Radius)

07.MsgBox CircleArea, , Caption

08.End Sub

09. 

10.Sub Circle_Lenght()

11.Const Caption As String = "Длина окружности"

12.Dim CircleLenght As Single, Radius As Single

13.Radius = 5

14.CircleArea = 2 * Pi * Radius

15.MsgBox CircleArea, , Caption

16.End Sub

В приведенном выше программном коде, Caption - константа процедурного уровня, а Pi - константа модульного уровня, ее значение доступно и процедуре Circle_Area и процедуре Circle_Lenght.

Внутренние константы

В языке VBA существует ряд внутренних констант, называемых также предопределенными константами. Внутренняя константа – это именованная константа, определенная разработчиками языка VBA. Все внутренние константы, определяемые VBA, начинаются с букв vb. Кроме этого существуют внутренние константы host-приложений. Например, внутренние константы Excel начинаются с букв xl, а внутренние константы Word начинаются буквами wd. Для просмотра полного списка имеющихся внутренних констант, определяемых VBA или host-приложением, используйте Object Browser.

Так же в этом разделе:
 
MyTetra Share v.0.64
Яндекс индекс цитирования