Excel VBA Break для цикла

VBA Break используется, когда мы хотим выйти или разорвать непрерывный цикл, который имеет определенные фиксированные критерии. Цикл for находится в области видимости, определяет операторы, которые выполняются многократно в течение фиксированного числа раз. Иногда, когда мы используем какое-либо условие цикла в VBA, часто случается, что код продолжает работать без конца или прерывания. Чтобы избежать подобных ситуаций, рекомендуется использовать некоторые функции разрыва или выхода, с помощью которых мы можем выйти из цикла с измеримым выходом из макроса.

Как использовать Excel VBA Break For Loop?

Мы узнаем, как использовать VBA Break for Loop с несколькими примерами в Excel.

Вы можете скачать этот шаблон VBA Break For Loop Excel здесь - Шаблон VBA Break For Loop Excel

Пример № 1 - VBA Break For Loop

Мы увидим пример, где при использовании цикла For критерии упорядочения не будут нарушены. Но чтобы это исправить, мы будем использовать цикл If-End . Для этого нам понадобится модуль, в который мы напишем этот код.

Выполните следующие шаги, чтобы использовать Break for Loop в Excel VBA.

Шаг 1: Откройте новый модуль, перейдите в окно VBA и в нем выберите «Модуль» в меню «Вставка».

Шаг 2: Это приведет нас к новому модулю в VBA. Теперь в этом модуле напишите Subcategory во имя VBA Break For Loop или в любое другое имя, которое определяет его значение.

Код:

 Sub VBABreak1 () End Sub 

Шаг 3: Теперь определите DIM как любой алфавит или слово. Это дает ему идентичность. Здесь мы используем алфавит «А» ниже.

Код:

 Sub VBABreak1 () Dim A End Sub 

Шаг 4: Теперь назначьте его как целое число, которое используется только для чисел, как показано ниже.

Код:

 Sub VBABreak1 () Dim A As Integer End Sub 

Шаг 5: Теперь присвойте числовое значение Integer A. Скажем, это 10, как показано ниже.

Код:

 Sub VBABreak1 () Dim A As Integer A = 10 End Sub 

Шаг 6: Теперь запустите цикл For и рассмотрите любое начальное значение A. Лучше принять это значение как Ноль. Это становится легко для расчета.

Код:

 Sub VBABreak1 () Dim A As Integer A = 10 Для A = 0 Для A Шаг 2 End Sub 

Шаг 7: И для печати значения, хранящегося в A, мы будем использовать окно сообщения, которое извлечет его значение. Вы также можете использовать любую форму предложения, чтобы сделать окно сообщения более значимым, что необязательно. Мы использовали его, как показано ниже.

Код:

 Sub VBABreak1 () Dim A As Integer A = 10 Для A = 0 до A Шаг 2 MsgBox («Значение A is:» & A) Next End Sub 

Шаг 8: Теперь скомпилируйте код пошагово, используя функциональную клавишу F8, и после этого запустите код, нажав кнопку Play, как показано ниже. Мы увидим, что результат на каждом шаге будет от 0 до 10 в шаге 2, как показано ниже.

Шаг 9: Теперь, наконец, закройте For Loop, а затем используйте Next в конце. «Далее» используется, когда мы используем числа в коде.

Код:

 Sub VBABreak1 () Dim A As Integer A = 10 Для A = 0 до A Шаг 2 MsgBox («Значение A is:» & A) Выход для следующего конца Sub 

Шаг 10: Это показывает, что цикл не завершен, и нам необходимо заполнить критерии выхода, чтобы выйти из цикла For. И для этого мы будем использовать условие If-End Loop. Поэтому подумайте о написании цикла If для того же целого числа A. Здесь выберите предел, пока вы не захотите запустить цикл. Мы рассмотрели это как 4.

Код:

 Sub VBABreak1 () Dim A As Integer A = 10 Для A = 0 до A Шаг 2 MsgBox («Значение A is:» & A) Если A = 4, тогда выход для следующего конца Sub 

Шаг 11: Теперь давайте добавим еще один критерий, в котором мы будем использовать, сколько раз оно будет умножено на любое число. Допустим, это 10. Вы можете выбрать любое другое число вместо 10. Но использование 10 облегчает понимание цикла умножения.

Код:

 Sub VBABreak1 () Dim A As Integer A = 10 Для A = 0 до A Шаг 2 MsgBox («Значение A is:» & A) Если A = 4, то A = A * 10 Выход для следующего конца Sub 

Шаг 12: Теперь снова используйте окно сообщения с именем, как мы использовали для цикла For, и, наконец, закройте оператор If Loop with End if, как показано ниже.

Код:

 Sub VBABreak1 () Dim A As Integer A = 10 Для A = 0 Для A Шаг 2 MsgBox («Значение равно A:» & A) Если A = 4, то A = A * 10 MsgBox («Значение A равно : "& A) Exit For End, если Next End Sub 

Шаг 13: Снова скомпилируйте код и запустите его. Цикл For начнется с показа сообщения со значением 0, а затем с 2, 4 и завершится 40. Это означает, что цикл For Loop прервался на 3- й итерации и принял последнее значение как 40.

Пример №2 - VBA Break For Loop

В этом примере мы применим цикл For и увидим, как разорвать цикл, когда он удовлетворяет критериям.

Шаг 1: Откройте новый модуль из меню «Вставка» и назначьте ему подкатегорию под любым именем или лучше последовательно, как показано ниже.

Код:

 Sub VBABreak2 () End Sub 

Шаг 2: Теперь определите DIM A как Integer. Использование Integer для тестирования позволяет нам быстрее реализовать код и легко отлаживать.

Код:

 Sub VBABreak2 () Dim A As Integer End Sub 

Шаг 3: Теперь запустите цикл For для определенного целого числа и задайте ему диапазон от любого числа строк, начиная с 1. Мы выбрали до 20.

Код:

 Sub VBABreak2 () Dim A As Integer для A = 1-20 End Sub 

Шаг 4: Теперь укажите диапазон или место, откуда числа печатаются в последовательности. Мы использовали ThisWorkBook для выбора текущего открытого файла и Worksheets (1) для выбора первого листа открытой рабочей книги, как показано ниже. Теперь, чтобы закрыть цикл For, напишите Next в конце, как показано ниже.

Код:

 Sub VBABreak2 () Dim A As Integer для A = 1–20 ThisWorkbook.Worksheets (1) .Cells (A, 1) = Следующий конец Sub 

Шаг 5: Запустите приведенный выше код вручную или с помощью сочетания клавиш F5. Мы можем видеть, что код дал число от 1 до 20.

Шаг 6: Теперь, чтобы разорвать цикл между 0 и 20, мы будем использовать условие If-End if цикла, где мы дадим критерии для включения, как показано ниже.

Код:

 Sub VBABreak2 () Dim A As Integer для A = от 1 до 20, если заканчивается, если ThisWorkbook.Worksheets (1) .Cells (A, 1) = A Next End Sub 

Шаг 7: Теперь напишите критерии: Если A больше 9 (или любое число, но меньше 20), тогда Exit For, как показано ниже. Мы предполагаем, что цикл For Loop должен прерваться, когда цикл достигнет 9.

Код:

 Sub VBABreak2 () Dim A As Integer для A = 1–20, если A> 9, затем выход для конца, если ThisWorkbook.Worksheets (1) .Cells (A, 1) = A Next End Sub 

Шаг 8: Теперь скомпилируйте код, чтобы найти ошибку. Если ошибка не найдена, запустите ее. Мы увидим, что целые числа A от 1 до 20 заполнены до тех пор, пока код не выйдет или не прервется в позиции 9.

Плюсы VBA Break For Loop

  • Выход или разрыв могут использоваться не только для цикла For, но и во многих других циклах, таких как Do-While.
  • Это наиболее часто используется среди всех условий цикла, доступных в VBA.
  • Для Loop это довольно просто и может работать даже без критериев выхода.

То, что нужно запомнить

  • Цикл for может работать без указания критериев выхода. Он может работать нормально, пока критерии без выхода не разорвет цикл до конца.
  • Важно разорвать любой цикл, который не удовлетворяет критериям выхода, используя «Выход» в цикле.
  • После написания кода сохраните файл как Macro Enable Excel, чтобы записанный код был сохранен.

Рекомендуемые статьи

Это было руководство к VBA Break For Loop. Здесь мы обсудим, как использовать Excel VBA Break For Loop вместе с практическими примерами и загружаемым шаблоном Excel. Вы также можете просмотреть наши другие предлагаемые статьи -

  1. VBA InStr объяснил с помощью примеров
  2. Целочисленный тип данных VBA
  3. Как выбрать ячейку, используя код VBA?
  4. Транспонировать диапазон в VBA

Категория: