Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
01_Лабораторная работа.doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
894.46 Кб
Скачать

Вложенные циклы

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

Задание 1

В заданном диапазоне получить целые числа из интервала от -100 до 100.

Задание 2

Выделить красным цветом минимальный элемент в заданном диапазоне.

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

Задание 3

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

Цикл For Each … Next

Цикл For Each..Next не использует счетчик цикла. Циклы For Each..Next выполняются столько раз, сколько имеется элементов в определенной группе. Цикл For Each..Next выполняется один раз для каждого элемента в группе.

For Each <элемент> In <группа>    <операторы>

Next

В нашем случае элемент – это ячейка, а группа – это выделенный диапазон.

Задание 4

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

Использование цикла For Each..Next зачастую сокращает код программы по сравнению с вложенными циклами.

Задание 5

Приведем пример программы нахождения минимума с использованием цикла For Each..Next.

Массив - это коллекция переменных, которые имеют общие имя и базовый тип. Все элементы данных, сохраняемых в массиве, должны иметь один и тот же тип. Информация, сохраненная в массиве, может быть доступна в любом порядке.

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

Одномерные массивы

Одномерный массив - это самый простой вариант массива, использующий обыкновенный список данных. Например:

Вася, Петя, Коля, Миша, Ваня, Слава, Игорь, Юра, Саша, Вова

Это строковый массив, состоящий из 10 элементов. Дадим ему название My_Array.

Нумерация элементов в массиве начинается с 0. Такая система нумерации довольно распространена в программировании и называется нумерацией с нулевой базой.

Для доступа к данным, хранящимся в определенном элементе массива, следует указывать имя массива с последующим числом, называемым индексом элемента. Индекс всегда заключается в круглые скобки. Например: My_Array(3) - этому элементу нашего массива соответствует "Миша" (не забывайте, что по умолчанию нумерация элементов массива начинается с 0).

Поскольку нумерация с нулевой базой не очень удобна (т.к. мы привыкли считать с 1, а не с 0), то в VBA имеется директива компилятора, позволяющая исправить это "неудобство": Option Base.

Директива компилятора имеет два варианта написания:

Option Base 0 - индексы массивов начинаются с 0 (установка по умолчанию)

Option Base 1 - индексы массивов начинаются с 1

Данная директива компилятора помещается в область объявлений модуля перед объявлениями любых переменных, констант или процедур. Нельзя помещать Option Base внутри процедуры. Можно иметь только один оператор Option Base в модуле, который влияет на все массивы, объявляемые в модуле.