В программах для выполнения повторяющихся действий используются циклы.
Циклы в Visual Basic бывают трех типов:
For ... Next For Each ... Next Do ... Loop
Конструкция For...Next выполняет последовательность команд определенное число раз. Такую конструкцию называют циклом, а выполняемые ею программные коды — телом цикла.
For Счетчик = НачальноеЗначение То КонечноеЗначение [Step] конструкции Next [счетчик]
Первый аргумент конструкции — Счетчик — определяет имя переменной, которая будет "считать" количество выполнений цикла. Параметр НачальноеЗначение указывает числовое значение, которое присваивается переменной-счетчику при первом проходе цикла. Цикл выполняется до тех пор, пока значение счетчика не превысит КонечноеЗначение , указанное после ключевого слова To. После каждого прохода цикла значение счетчика изменяется на величину Шага, указанную за ключевым словом Step. Ключевое слово Next обозначает конец тела цикла и является обязательным.
Конструкция Each ... Next используется для обработки всех элементов некоторого набора объектов, например массива. Ее удобно использовать в том случае, когда количество обрабатываемых элементов не известно.
For Each Элемент In группа конструкции Next элемент
При использовании конструкции For Each ... Next необходимо иметь в виду, что для набора объектов параметр Элемент может быть только переменной типа Variant , общей переменной типа Object или объектом, перечисленным в Object Browser. Для массивов параметр Элемент может быть только переменной типа Variant.
Конструкция Do...Loop с ключевым словом While выполняется до тех пор, пока задаваемое в цикле условие истинно.
Do While Условие Конструкции Loop
и Do Конструкции Loop While Условие
Аргумент конструкции Условие является логическим выражением, значение которого проверяется перед каждым проходом цикла. Если это значение равно True , то выполняется последовательность команд, которые расположены между Do while и ключевым словом Loop . Эти конструкции образуют тело цикла. Если при очередном проходе цикла условие равно False , то происходит выход из цикла и управление передается конструкции, следующей за Loop.
Конструкция Do ... Loop с ключевым словом Until выполняется до тех пор, пока задаваемое в цикле условие ложно.
Do Until Условие Конструкции Loop
и Do Конструкции Loop Until Условие
В циклах может быть использован оператор Exit . В некоторых случаях необходимо прервать выполнение цикла до его завершения. Это можно сделать с помощью команды безусловного перехода Exit. Команда Exit завершает выполнение цикла и передает управление следующей за циклом конструкции.
Синтаксис этого оператора внутри цикла For выглядит так: Exit For . Внутри цикла Do синтаксис оператора Exit Do.