End Sub. Использование массива

Option Base 1

Использование массива

После того как массив объявлен, в него считываются какие-то данные. Рассмотрим пример использования трехэлементного целочисленного массива:

Sub ЦелочисленныйМассив()

Dim Vals(3) As Integer

Vals(1) = Int(100 * Rnd())

Vals(2) = Int(100 * Rnd())

Vals(3) = Int(100 * Rnd())

MsgBox "Выиграли лотерейные номера: " & Vals(1) & ", " & _

Vals(2) & ", " & Vals(3)

В строке З объявлен одномерный массив Vals, содержащий 3 числа типа Integer. В строках 4—6 элементам этого массива присваиваются значения. Операторы присваивания для элементов массива выглядят точно так же, как операторы присваивания для переменных, за исключением того, что надо каждый раз указывать номер элемента, которому присваивается значение. Номер указан в круглых скобках после имени массива.

Обратите также внимание на формулу в правой части операторов присваивания (строки 4—6). В ней для генерации случайного целого числа от 0 до 100 используются встроенные функции VBA Rnd и Int. Первая из них генерирует действительное случайное число в интервале от 0 до 1 и может принимать один аргумент — «затравочное» число (подробности — в справочной системе VBA). Функция Int преобразует действительное число в целое, удаляя все цифры после десятичного разделителя (то есть всегда округляя до меньшего). Умножая случайное число, полученное функцией Rnd, на 100 и отбрасывая дробную часть, получаем случайное целое, принадлежащее диапазону от 0 до 100. Применив эту формулу трижды, мы зададим в массиве Vals три произвольных целых числа. В строке 7 программы ЦелочисленныйМассив элементы массива, каждый со своим индексом, передаются в функцию MsgBox.

В следующем примере мы покажем, как использовать массив типа Variant. Тип Variant выбран из-за того, что в массиве хранятся разнотипные данные (строковое значение, дата, целое число).

Sub МассивVariant()

Dim Data(3) As Variant

Data(1) = "Иванов"

Data(2) = #3/21/1947#

Data(3) = Year(Date) - Year(Data(2))

MsgBox Data(1) & “, возраст “ & Data(3) & “, родился “ & Data(2)


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: