For Each varItem In astrStrings
' Выполнение каких-то действий над элементом varItem
…
Next
Цикл While-Wend
While-Wend являeтcя самым простым циклом, с помощью которого можно осуществлять определенные действия до тех пор, пока выполняется заданное условие. Формат данного цикла следующий:
While Условие
[Инструкции]
Wend
Инструкции в теле цикла While-Wend выполняются до тех пор, пока логическое выражение Условие имеет значение True (значение этого выражения вычисляется при каждой итерации).
Ниже приведен пример организации цикла While-Wend:
While i < 100
' Действия в цикле
…
i = i + 3
Wend
Следует отметить, что цикл While-Wend является значительно упрощенным и ограниченным с точки зрения разнообразности способов его использования.
Цикл Do-Loop
Цикл Do-Loop предоставляет гораздо больше возможностей при организации циклических действий с проверкой логического условия, чем цикл While-Wend. Проверка логического условия окончания цикла может происходить в начале каждой итерации цикла, при этом формат цикла следующий:
Do [While | Until Условие]
[Инструкции]
[Exit Do]
[Инструкции]
Loop
Проверка условия может также происходить в конце каждой итерации цикла (тогда выполняется как минимум одна итерация цикла):
Do
[Инструкции]
[Exit Do]
[Инструкции]
Loop [While | Until Условие]
В приведенных форматах Условие – любое логическое выражение. При использовании ключевого слова While цикл выполняется до тех пор, пока Условие имеет значение True, а при использовании ключевого слова Until – пока Условие имеет значение False. Для выхода из цикла предусмотрена инструкция Exit Do.
Ниже приведен пример использования цикла Do-Loop:
Do While i < 100
i = i + 1
Do
j = j + 5
' Действия
…
Loop Until j > 200
Loop
Язык VBA поддерживает инструкции, позволяющие осуществлять различные действия в зависимости от выполнения или невыполнения заданных условий, – инструкции выбора If-Then-Else и Select.
Инструкция If-Then-Else
Инструкция VBA If-Then-Else предоставляет возможность выбора одного из действий в зависимости от значений заданных логических выражений. Формат данной инструкции следующий:
If Выражение1 Then
[Инструкции1]
[ElseIf Выражение2 Then
[Инструкции2]]
…
[ElseIf ВыражениеN Then
[ИнструкцииN]]
[Else
[Инструкции]]
End If
Здесь Выражение1 – ВыражениеN – логические выражения. Если какое-либо из них истинно, то выполняются инструкции, находящиеся после соответствующего ключевого слова If или Elself. Если ни одно из выражений не является истинным, то выполняются инструкции, записанные после ключевого слова Else (если, конечно, это ключевое слово используется).