Кінець VBA

У VBA для завершення виконання ВСІХ кодів використовуйте Кінець команду.

1 Кінець

Коли відбувається виконання коду Кінець, він негайно завершить виконання і вийде з програми.

Якщо ви хочете дізнатися, як вийти з Sub на помилку, натисніть це посилання: VBA On Error Exit Sub

Якщо ви хочете дізнатися, як вийти з підрозділу або функції, клацніть на цьому посиланні: VBA Вийти з суб -функції або функції

Закрийте весь код у VBA

На прикладі ви побачите, що відбувається, коли ми використовуємо Кінець команда у VBA. Ми створили Sub EndSub, який має Кінець команда всередині. Цей суб викликається з CallEndSub. Ось код:

123456789101112131415161718 Приватний Sub EndSub ()Dim i як ціле числоДля i = 1-10Якщо i = 5 ТодіMsgBox "Значення i" & iКінецьЗакінчити ЯкщоДалі iEnd SubПриватний додатковий викликEndSub ()Викличте EndSubMsgBox "Закінчити саб"End Sub

В EndSub, ми спочатку вводимо цикл For, якщо значення i менше 10:

123 Для i = 1-10Далі i

Після цього ми перевіряємо, чи значення i дорівнює 5, за допомогою команди If. Якщо значення 5, ми повертаємо вікно повідомлення зі значенням i і використовуємо команду Кінець.

1234567 Якщо i = 5 ТодіMsgBox "Значення i" & iКінецьЗакінчити Якщо

Якщо умова не виконується, наступне твердження збільшує i на 1 і знову входить у цикл For:

1 Далі i

В CallEndSub, ми спочатку викликаємо Sub EndSub:

1 Викличте EndSub

Після цього ми повертаємо вікно повідомлення:

1 MsgBox "Закінчити саб"

Якщо ви запускаєте CallEndSub, він спочатку викликає EndSub. Якщо ви виконаєте цей код у режимі налагодження, ви побачите, що він пройде цикл 5 разів. У 5го ітерації, значення змінної i стає 5, а код входить у тіло If. Тепер MsgBox “Значення i” та i виконується і Кінець після того:

Зображення 1. Кінець VBA

Як бачите, виконання коду припиняється одразу після Кінець команду, тому MsgBox "Закінчити саб" ніколи не виконується.

wave wave wave wave wave