Инструкция For … Next позволяет повторять блок инструкций заданное число раз.
For Счетчик_цикла = Нач_знач To Кон_знач Step Шаг
инструкции
Next Счетчик_цикла
Инструкция Do...Loop используется для выполнения наборов инструкций неопределенное число раз. Инструкцию Do...Loop можно завершить с помощью инструкции Exit Do в блоке If...Then. Для прекращения бесконечного цикла используются клавиши Esc или Ctrl+Break.
Набор инструкций может повторяться:
1. Пока условие имеет значение True. Для этого используется ключевое слово While, причем условие может проверяться как до входа в цикл, так и после хотя бы однократного выполнения цикла.
Do While условие Do
инструкции инструкции
Loop Loop While условие
2. Пока условие не примет значение True, т.е. пока оно имеет значение False. Для этого используется ключевое слово Until. Также как и в первом случае условие может проверяться как до входа в цикл, так и после хотя бы однократного выполнения цикла.
Do Until условие Do
инструкции инструкции
Loop Loop Until условие
Пример 8.2. Диапазон A1:D10 на Лист1 заполнен целыми числами. Разработать процедуру, которая будет для ячеек с четными числами устанавливать заливку красным цветом и выравнивание влево.
|
|
Sub Формат_для_четных()
Dim i As Integer
Dim j As Integer
Dim rng As Range
‘ Присвоение объекта, являющегося диапазоном ячеек A1:D10,
‘ объектной переменной rng
Set rng = Worksheets("Лист1").Range("A1:D10")
‘ Цикл перехода по всем ячейкам объекта rng
For i = 1 To rng. Rows.Count
For j = 1 To rng. Columns.Count
‘ Если остаток от деления значения ячейки на 2 равен 0, то в ней
‘ устанавливается заливка красным цветом и выравнивание влево
If rng. Cells(i, j).Value Mod 2 = 0 Then
rng. Cells(i, j).Interior.ColorIndex = 3
rng. Cells(i, j).HorizontalAlignment = xlLeft
End If
Next j
Next i
End Sub