VBA делать до цикла

Что такое «до цикла» в VBA Excel?

В VBA делать до цикла, нам нужно определить критерии после оператора until, что означает, когда мы хотим, чтобы цикл остановился, а оператор end — это сам цикл. Таким образом, если условие ЛОЖНО, оно продолжит выполнение оператора внутри цикла, но если условие ИСТИННО, оно сразу же выйдет из оператора «До тех пор».

Поскольку сами слова говорят о том, что для выполнения какой-либо задачи до достижения критерия, цикл «Выполнять, пока» используется почти во всех языках программирования, в VBA мы также иногда используем цикл «Выполнять, пока». Do loop означает делать что-то до тех пор, пока условие не станет ИСТИННЫМ. Это похоже на логическую функцию, которая работает на основе ИСТИНА или ЛОЖЬ.

vba делать до условия

Это противоположно циклу Do While, где Do while запускает циклы до тех пор, пока условие истинно.

Синтаксис

Цикл Do Until имеет два вида синтаксиса.

Синтаксис №1

Do Until [condition]

[Perform Some Task]

Loop

Синтаксис № 2

Do

[Perform Some Task]

Loop Until [condition]

Оба выглядят очень похоже, и есть одно простое различие.

В первом синтаксисе цикл «Делать до» сначала проверяет условие и получает результат условия ИСТИНА или ЛОЖЬ. Если условие ЛОЖЬ, он выполнит код и выполнит указанную задачу, а если условие ИСТИНА, то выйдет из цикла.

Во втором синтаксисе, цикле «Выполнить», сначала выполняется задача кода, а затем проверяется, является ли условие ИСТИННЫМ или ЛОЖНЫМ. Если условие FALSE, оно снова вернется и выполнит ту же задачу. Если условие TRUE, то оно сразу выйдет из цикла.

Пример

Я знаю, что не так просто понять что-либо в теоретической части, но не о чем беспокоиться. Мы дадим вам простые примеры, чтобы понять цикл. Читать дальше. Чтобы начать обучение, давайте выполним задачу по вставке первых 10 порядковых номеров из ячейки A1 в A10.

Вы можете скачать этот шаблон VBA Do Before Excel здесь — VBA делать до шаблона Excel

Выполните следующие шаги, чтобы применить цикл «Делать до».

Шаг 1: Сначала создайте имя макроса, чтобы запустить подпроцедуру.

Код:

Sub Do_Until_Example1()

End Sub
Пример 1.1

Шаг 2: Определите переменную как «Длинная.» Я определил «x» как длинный тип данных.

Dim x As Long
Пример 1.2

Шаг 3: Теперь введите слово «Делать до».

Do Until
Пример 1.3

Шаг 4: После запуска имени цикла введите условие «x = 11».

Do Until x = 11
Пример 1.4

х = 11 логический тестЛогический тестЛогический тест в Excel приводит к аналитическому выводу, истинному или ложному. Оператор равенства «=» является наиболее часто используемой логической проверкой.читать далее мы подали заявку. Таким образом, эта строка говорит, что цикл должен выполняться до тех пор, пока x не станет равным 11.

Шаг 5: Применим свойство CELLS и вставим серийные номера от 1 до 10.

Cells(x, 1).Value = x
Пример 1.5

Примечание: Здесь мы упомянули, что «x» начинается с 1, поэтому сначала значение x равно 1. Где бы ни был «x», он равен 1.

Шаг 6: Теперь закройте петлю, введя слово «LOOP».

Sub Do_Until_Example1()

Dim x As Long

Do Until x = 11
Cells(x, 1).Value = x
Loop

Конец сабвуфера

vba делать до примера 1.6

Хорошо, мы закончили с частью кодирования, теперь мы будем тестировать коды построчно, чтобы лучше понять цикл.

Чтобы запустить построчный код, сначала нажмите клавишу F8.

vba делать до сочетания клавиш

Сначала имя макроса будет выделено желтым цветом.

vba делать до примера 1.7

Когда вы видите желтую строку, это говорит о том, что это не выполняется, если вы нажмете клавишу F8 еще раз.

Теперь нажмите клавишу F8 еще раз, желтая линия перейдет к пункту «Выполнить до цикла».

vba делать до примера 1.8

Теперь, чтобы понять цикл, поместите курсор на переменную «x» и посмотрите значение переменной «x».

vba делать до примера 1.9

Итак, х=0. Поскольку выделенная строка является первой строкой в ​​цикле, значение «x» равно нулю, поэтому нажмите клавишу F8 еще раз и увидите значение «x». Перед этим выходом код выполняется и присваивает значение «x» как 1.

vba делать до примера 1.10

Теперь снова запустите цикл, нажав клавишу F8. См. значение «x».

vba делать до примера 1.11

Теперь значение «x» отображается как 1. Чтобы иметь возрастающее значение для переменной «x», нам нужно переназначить значение переменной «x» как x = x + 1 внутри цикла.

vba делать до примера 1.12

Теперь нажмите клавишу F8 еще раз, и мы должны получить значение 1 в ячейке A1.

vba делать до примера 1.13

Теперь снова нажмите клавишу F8 и посмотрите, какое значение имеет «x».

vba делать до примера 1.14

Значение переменной «x» теперь равно 2. Таким образом, наше условие требует запуска цикла до тех пор, пока условие не станет ИСТИННЫМ, поэтому наш цикл продолжает выполняться до тех пор, пока значение «x» не станет равным 11.

Нажмите F8 еще раз. Он вернётся к циклической линии «Делать до».

пример 1.15

Нажмите клавишу F8 еще два раза, и мы получим значение 2 в ячейке A2.

vba делать до примера 1.16

Нажмите клавишу F8 еще раз, и значение «x» станет равным 3.

excel vba делать до цикла - пример 1.17

Нажмите клавишу F8 еще раз, чтобы вернуться к циклу еще раз.

excel vba делать до цикла - пример 1.15

Таким образом, этот цикл снова будет выполнять задачу, пока значение «x» не станет равным 11. Теперь я выполнил цикл, пока значение «x» не станет равным 11.

excel vba делать до цикла - пример 1.18

Теперь, если я нажму F8, он все равно вернется к циклу.

excel vba делать до цикла - пример 1.15

Но если я сейчас нажму клавишу F8, цикл выйдет из цикла, потому что примененное условие станет «ИСТИННЫМ», т. е. x = 11.

конец петли - пример 1.19

Итак, теперь у нас есть серийные номера от 1 до 10 на листе Excel.

Пример 1.20

Итак, это основная идея цикла «Делай до». Чтобы понять какие-либо циклы, вам нужно запускать код построчно, пока вы не получите полное представление о циклах.

УЗНАТЬ БОЛЬШЕ >>

Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *