Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Metodichka_po_VBA3_20_06.doc
Скачиваний:
27
Добавлен:
20.11.2019
Размер:
1.79 Mб
Скачать

1.6 Массивы

Массивом называется упорядоченная последовательность элементов одного типа, обращение к которым осуществляется при помощи его имени и индекса (т.е. порядкового номера элемента). Примерами массива могут служить: последовательности заработных плат по табельным номерам работников; таблица выпуска различного вида продукции по месяцам года.

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

Существует две разновидности массивов: статические и динамические.

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

Данный вид массивов описывается так же, как и переменные - при помощи одного из служебных слов: Dim, Private, Public или Static с последующим указанием типа после служебного слова As. При этом может быть указана как верхняя граница, так и обе границы одновременно, например:

Dim arrA(9) As Integer

Dim arrB(l To 10) As Single

В данном случае оба массива содержат одно и то же количество элементов одинакового типа. Однако нумерация элементов аrrА начинается с нуля, в то время как нумерация аrrВ - с единицы. Для явного указания границ следует использовать служебное слово То, в то время как при описании стандартного массива с нумерацией элементов от нуля необходимо просто указать значение верхней границы.

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

Dim arrA(3, 4) As Integer ‘Объявлена таблица 4 строки, 5 столбцов

Dim arrB(l To 4, 1 To 5) As Single ‘Объявлена таблица 4 строки, 5 столбцов

В данном примере объявленные массивы являются двумерными и содержат одинаковое количество элементов, нумерация которых отличается: arrA нумеруется начиная с нуля, аrrВ - начиная с единицы.

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

Описание динамических массивов осуществляется в два этапа:

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

В нужном месте процедуры описать данный массив с требуемым значением для размерности при помощи оператора ReDim. Например:

Dim arrA ( ) As Integer ‘Описание типа массива

n = InputBox(“Введите размерность массива”) ‘Ввод значения размерно сти в диалоговое окно ввода

ReDim arrA(5) As Integer ‘Указание размерности

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

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

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]