У ВБА, можете програмирати свој код за излаз из подморнице кад год се појави грешка. Да бисте то урадили, користите Укључено Грешка ГоТо и Екит Суб.
На грешци Гото каже ВБА -и да, када се појави грешка, „идите на“ одређени део кода. Нпр:
1 | Укључено Грешка Иди на ЕррорХандлер |
Унутар тог одељка тада можете рећи ВБА да напусти Суб да изађе из подпоступка:
12 | ЕррорХандлер:Екит Суб |
Читајте даље, да бисте видели ове редове кода на делу …
Изађите из грешке под -укључења у ВБА
У овом примеру генерисаћемо грешку дељењем са нулом:
1 | и = 5 /0 |
Погледајте цео код испод. Када ВБА прочита грешку, „отићи ће“ у одељак кода ЕррорХандлер и изаћи:
123456789101112131415 | Под ТестЕррор ()Дим и Ас ИнтегерУкључено Грешка Иди на ЕррорХандлери = 5 /0'Учини нешто са иМсгБок иЕкит СубЕррорХандлер:МсгБок "Ако дође до грешке, изађите из Суб"Екит СубЕнд Суб |
Да бисте навели руковање грешкама, прво морате да декларишете Укључено Грешка ГоТо изјава. Требало би да се декларише на почетку подметра:
1 | Укључено Грешка Иди на ЕррорХандлер |
Након тога морате да декларишете код за руковање грешкама. Обично се налази на крају кода:
123 | ЕррорХандлер:МсгБок "Ако дође до грешке, изађите из Суб"Екит Суб |
Додајемо „Екит Суб“ изнад ЕррорХандлер -а јер желимо да покренемо ЕррорХандлер код само ако постоји грешка.
12345 | Екит СубЕррорХандлер:МсгБок "Ако дође до грешке, изађите из Суб"Екит СубЕнд Суб |
Ако покренете Суб, доћи ће до грешке због дељења нулом. У том тренутку ће се извршити код за руковање грешкама. Појавиће се оквир за поруку и Суб је изашао.
Слика 1. ВБА Он Еррор Екит Суб
Ако желите да научите како да завршите извршавање кода у ВБА, кликните на ову везу: ВБА Крај
Ако желите да научите како да изађете из под -функције или функције, кликните на ову везу: ВБА изађи из под -функције или функције