В VBA вы можете выйти из цикла Do, используя Выход Сделать команда.
1 | Выход Сделать |
Когда выполнение кода доходит до Выход Сделать, код выйдет из цикла Do и продолжит работу с первой строки после цикла.
Если вы хотите узнать, как выйти из цикла For, щелкните эту ссылку: VBA Exit For
Выход из цикла при выполнении условия
В приведенном ниже примере вы увидите, как выйти из цикла Do при выполнении определенного условия. Мы будем выполнять цикл и увеличивать значение переменной i на 1 на каждой итерации. Когда дело доходит до 6, мы хотим выйти из цикла и вернуть окно сообщения. Вот код:
1234567891011 | Dim i как целое числоДелай, пока я <10я = я + 1Если i = 6, тоВыход СделатьКонец, еслиПетляMsgBox "Значение" & i |
Сначала мы входим в цикл Do Loop, если значение i меньше 10:
123 | Делай, пока я <10Петля |
В теле цикла мы увеличиваем значение i на 1:
1 | я = я + 1 |
После этого мы проверяем, равно ли значение i 6, используя команду If. Если значение равно 6, мы выходим из цикла Do и переходим к первой строке после цикла:
123 | Если i = 6, тоВыход СделатьКонец, если |
Первая строка кода, которая будет выполнена после выхода из цикла Do, - это окно сообщения со значением i:
1 | MsgBox "Значение" & i |
Если вы выполните этот код в Режим отладки, вы увидите, что он пройдет цикл 6 раз. В 6th итерации значение переменной i становится равным 6, и код входит в тело If. Теперь тело цикла Do завершено. После этого появится всплывающее окно MsgBox со значением i: