Константы
Константы очень похожи на переменные. Они имеют имена, которые строятся по тем же правилам, в них могут храниться различные значения и т.д. Главное отличие констант от переменных в том, что константы нельзя изменять в ходе выполнения программы. Это удобно в тех случаях, когда вы собираетесь много раз использовать в программе какое-то значение и хотите, чтобы оно гарантированно оставалось неизменным.
Для объявления констант используется ключевое слово Const. При объявлении константы нужно обязательно указать ее имя и присвоить ей нужное значение. При необходимости можно указать и тип константы. Вот как выглядит работа с константами в процедуре (листинг 5.24.):
Const str_Name As String = "Александр"
Const int_Size As Double = 18000
Dim num_NewSize As Double
MsgBox ("Здравствуйте, " + str_Name)
num_NewSize = int_Size * 2
Здесь мы объявили пару констант - одну строковую для хранения имени пользователя, вторую - типа Double. Строковую константу мы используем для построения строки вывода в операторе MsgBox, а числовую применяем для построения выражения, результат вычислении которого записывается в переменную num_NewSize.
|
|
В VBA имеется обширный набор встроенных констант. Они используются для работы с цветом (например, vbRed - красный и т.д.) для задания типов окон сообщений и во многих других случаях. Как правило, константы, допустимые в том или ином случае, можно найти в справочном материале, который появляется при наборе команд. Так же, подробные сведении о встроенных константах содержатся в справочной системе VBA.
Решим простую задачу: ввести в ответ на вопросы программы фамилии сотрудников. Если фамилий немного - 5 или 10 - использование переменных, с которыми вы уже знакомы, вполне оправдано. Программа будет состоять из нескольких строк такого вида:
a = InputBox("Введите фамилию сотрудника").
Как быть, если нужно работать со списком из 20 фамилий? А если их будет 50, 1000 или их количество должно быть определено в ходе выполнения программы?
Для обработки больших объемов информации использовать переменные неудобно. Что же делать? Ответ прост: использовать массивы.
Массив - это именованный набор индексированных ячеек. Ячейки так же называют элементами или индексированными переменными.
У каждого массива 5 основных характеристик: имя, размерность, число элементов, номер первого элемента и тип элементов.
- Имя - правила именования массивов аналогичны правилам именования переменных.
- Размерность - одномерные массивы напоминают одну строку таблицы, каждая ячейка которой содержит какие-то данные. Многомерные массивы имеют больше измерений. Их можно сравнивать с таблицами, имеющими множество строк и столбцов и с наборами таблиц.
- Нумерация элементов подчиняется следующим правилам:
- По умолчанию нумерация элементов массива начинается с 0. Первый по счету элемент получит индекс 0, второй - 1 и т.д.
- В объявлении отдельного массива можно явно указать индекс его первого и последнего элемента, разделив их ключевым словом To.
- Если вы хотите, чтобы индексы всех массивов начинались с 1, добавьте в раздел объявлений модуля (вне процедур, функций и обработчиков событий) командуOptionBase 1.
- Тип - подчиняется тем же правилам, которые мы ранее рассмотрели для переменных. Если пользователь не указал его явно, массив получит тип по умолчанию - Variant. Это требует больше системных ресурсов, но позволяет обрабатывать значения различных типов.
Не всегда количество элементов и размерность массива известны до начала работы программы. VBA умеет работать с динамическими массивами, параметры которых можно менять в ходе выполнения программы. О них мы поговорим ниже.
|
|