Введение в VBA Exit Sub

Выход Sub выглядит как завершение подкатегории по ее имени. Но на самом деле Exit Sub используется для полного выхода из подпроцедуры, не позволяя завершить полный код. Когда мы применяем Exit Sub между любым кодом, тогда только код перед Exit sub полностью запускается в VBA Excel. Код после подпрограммы Exit будет пропущен, и после этого будет перемещен весь код. Exit Sub обычно лучше работает с Do-While Loop.

Как применить Exit Sub с помощью VBA?

Давайте посмотрим примеры Exit Sub в Excel VBA.

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

Пример № 1 - VBA Exit Sub

Шаг 1: Чтобы применить Exit Sub, нам нужен модуль. Для этого откройте окно VBA. Нажмите на вкладку меню Вставка, мы получим список, оттуда выберите Модуль, как показано ниже.

Шаг 2: После этого, во вновь открывшемся модуле, напишите подкатегорию под именем VBA Exit Sub или под любым другим именем, как показано ниже.

Код:

 Sub VBA_ExitSub1 () End Sub 

Шаг 3: Определите переменную Dim с любым именем, скажем, A. И дать ему целочисленную функцию, как показано ниже.

Код:

 Sub VBA_ExitSub1 () Dim A As Integer End Sub 

Шаг 4: Теперь откройте цикл Do While, как показано ниже.

Код:

 Sub VBA_ExitSub1 () Dim A As Integer Делать в то время как End Sub 

Шаг 5: Между делом Пока мы пишем простой код сравнения. Давайте сделаем добавление переменной A с +1. Что означает ДОБАВЛЕНИЕ для А с его собственным значением +1. И запускаем его, пока не получим значение +1 для переменной A.

Код:

 Sub VBA_ExitSub1 () Dim A As Integer Do A = A + 1, в то время как End Sub 

Шаг 6: Теперь, сколько мы хотим добавить +1 к A, будет определено в условии цикла . Что говорит, что DO Loop будет работать в соответствии с условием A + 1, пока A меньше 100.

Код:

 Sub VBA_ExitSub1 () Dim A As Integer Do A = A + 1 Loop, в то время как A <100 End Sub 

Шаг 7: Теперь нам понадобится окно сообщения (которое является необязательным), чтобы увидеть вывод цикла Do While . Для этого вставьте MsgBox и передайте его переменной A.

Код:

 Sub VBA_ExitSub1 () Dim A As Integer Do A = A + 1 Loop, в то время как A <100 MsgBox A End Sub 

Шаг 8: Теперь скомпилируйте код, нажав клавишу F8, чтобы увидеть, есть ли какая-либо ошибка в коде или нет. Позже запустите весь код, нажав кнопку Play, расположенную под строкой меню, как показано ниже. Мы увидим, что окно сообщения дало нам вывод как 100 . Это означает, что значение A меньше 100, а формула, которую мы определили в DO Loop, говорит, что значение A равно A + 1. Таким образом, ответ будет равен 100.

Шаг 9: Теперь, чтобы применить Exit Sub в выполненном цикле Do While, нам нужно добавить инструкцию Exit Sub до запуска Do Loop или после того, как мы определили переменную A, как показано ниже.

Код:

 Sub VBA_ExitSub1 () Dim A As Integer Выход Sub Sub Цикл A = A + 1, в то время как A <100 MsgBox A End Sub 

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

Мы заметим, что мы не нашли никакого выхода. Это связано с тем, что выполнение кода завершено, но он пропущен до цикла «Пока» полностью не выводится в окне сообщения.

Пример № 2 - VBA Exit Sub

Давайте рассмотрим другой пример. В этом примере мы увидим, как работает Exit Sub при пропуске изменения цвета шрифта. Ибо у нас есть текст в ячейке C3, как показано ниже. Как мы видим, текст по умолчанию пустой цвет.

Шаг 1: Для этого откройте новый модуль и дайте ему подкатегорию от имени VBA Exit sub или под любым другим подходящим именем в соответствии с вашими потребностями.

Код:

 Sub VBA_ExitSub2 () End Sub 

Шаг 2: Выберите ячейку диапазона с текстом. Здесь нашей ячейкой диапазона будет ячейка C3.

Код:

 Sub VBA_ExitSub2 () Range ("C3"). Выберите End Sub 

Шаг 3: Поскольку нам нужно изменить цвет шрифта, в следующей строке кода выберите функции Font и Color одновременно, как показано ниже.

Код:

 Sub VBA_ExitSub2 () Range ("C3"). Выберите Selection.Font.Color = End Sub 

Шаг 4: Теперь выберите цвет шрифта, который мы хотим изменить. И выбор цвета будет начинаться с vb согласно настройке VBA. Здесь мы выбираем красный, как показано ниже.

Код:

 Sub VBA_ExitSub2 () Range ("C3"). Выберите Selection.Font.Color = vbRed End Sub 

Шаг 5: Теперь скомпилируйте весь код за один раз, так как код довольно мал и запустите его. Мы увидим, что цвет шрифта в ячейке C3 теперь изменен на красный с черного по умолчанию.

Шаг 6: Теперь, чтобы применить Exit Sub здесь в коде изменения цвета шрифта, поместите оператор Exit Sub перед строкой кода выбора ячеек Range или между выбором ячейки диапазона (1- й ) и цветом шрифта (2- й ), как показано ниже.

Код:

 Sub VBA_ExitSub2 () Range ("C3"). Выберите Exit Sub Selection.Font.Color = vbRed End Sub 

Шаг 7: Теперь снова запустите код. На этот раз мы заметим, что цвет шрифта текста в ячейке C3 не меняется на красный, как это было раньше, до размещения оператора Exit Sub .

Шаг 8: Мы можем преобразовать добавленную инструкцию Exit Sub в текст, вставив одну кавычку, как показано ниже. Делая это, он будет преобразован в текст . После этого цвет этой линии будет изменен на зеленый.

Код:

 Sub VBA_ExitSub2 () Range ("C3"). Выберите 'Exit Sub Selection.Font.Color = vbRed End Sub 

Плюсы VBA Exit Sub

  • Это экономит время при переписывании кода снова и снова.
  • Мы можем пропустить часть кода, которую мы не хотим запускать.
  • Это применимо во всех типах функций.
  • Это очень полезно при работе с большими строками кода, когда нам нужно пропустить или перейти к определенной строке кода.

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

  • VBA Exit Sub работает со всеми видами кодов и функций, но работает лучше со всеми типами Loop, особенно с циклом DO-WHILE.
  • Он выпрыгивает из части кода и выполняет только тот код, который находится перед Exit Sub.
  • Exit и End Sub, оба разные.
  • Он пропускает и выпрыгивает из кода, не выполняя его полностью. И наполовину выполненный код не дает правильного вывода.

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

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

  1. Как использовать VBA While Loop?
  2. VBA Удалить дубликаты
  3. Понимание типов данных VBA
  4. VBA Sleep с примерами

Категория: