Excel. Трюки и эффекты - страница 25

Шрифт
Интервал


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 (если, конечно, это ключевое слово используется).