VBA GoTo Line Line Label

Изявлението GoTo във VBA ви позволява да преминете към ред код.

Първо създайте етикет на ред навсякъде във вашия код:

1 Пропускане:

След това добавете към изявлението „GoTo“, за да преминете към етикета на реда

1 GoTo Skip

GoTo Примери

Този пример тества годината. Ако годината е 2022 или по -късна, тя ще отиде до етикета на пропуснатата линия. Това ви позволява да пропуснете кода, ако са изпълнени определени условия.

123456789101112 Под GoTo_Example ()Затъмнете година като цяло числогодина = 2019Ако година> = 2019, тогава GoTo Skip„Данни за процеса за години <2022MsgBox „Годината е преди 2022“Пропускане:End Sub

GoTo Многоредови етикети

Можете също да използвате оператори GoTo, за да преминете към съответните редове код. Нека коригираме предишния си пример, за да отидем на различни места с код въз основа на коя година е:

1234567891011121314151617181920212223242526272829303132 Sub GoTo_Statement ()Затъмнете година като цяло числогодина = 2019Ако година = 2019 ТогаваОтидете през 2019 г.Иначе година = 2010 ТогаваОтидете до 2020 г.ИначеОтидете до 2021 годинаКрай Ако2019 година:„Процес 2022 г.MsgBox „Годината е 2022“Отидете до EndProc2020 година:„Процес 2022 г.MsgBox „Годината е 2022“Отидете до EndProc2021 година:„Процес 2022+MsgBox „Годината е 2022+“EndProc:End Sub

Забележете „GoTo EndProc“ преди всеки етикет на ред. Добавихме този ред код, така че тези кодови секции се пропускат, освен ако не са достъпни от съответния „GoTo“.

GoTo Error Handler Край на процедурата

Сега нека използваме Error Handling, за да преминем към края на процедурата, ако има грешка.

123456789101112 Sub GoTo_OnError ()Dim i As IntegerПри грешка GoTo EndProci = 5 /0MsgBox iEndProc:End Sub

Отидете да повторите кода

Последният ни пример ще използва GoTo Statement за повтаряне на някакъв код.

По -долу използваме кутия за съобщения с Да / Не (Кликнете, за да научите повече), за да потвърдим, че потребителят признава предупреждението. Ако кликнат върху „Не“, полето със съобщение ще се показва отново, докато не кликне върху „Да“ (вижте GIF по -долу).

1234567891011 Sub GoTo_ДаNoMsgBox ()Повторете съобщение:Затъмнен отговор Като цяло числоanswer = MsgBox ("ПРЕДУПРЕЖДЕНИЕ: Този файл е отворен като файл само за четене, което означава, че всички промени, които правите, няма да бъдат запазени, освен ако/докато нямате права за запис." & _Chr (13) & Chr (13) & "Изберете File, SaveAs, за да запазите копие, преди да работите в този файл." & vbNewLine & vbNewLine & "Разбирате ли?", vbExclamation + vbДаНе, "ВНИМАНИЕ!")Ако answer = vbNo, тогава GoTo RepeatMsg 'Repeat, докато потребителят кликне върху "Yes"End Sub

VBA GoTo a Line Label в Access VBA

Всички горепосочени примери работят абсолютно същото в Access VBA като в Excel VBA.

1234567 Sub TestGoTo ()При грешка GoTo завършваDoCmd.OpenForm "FrmClients"Изход от Subзавършване:MsgBox "Не може да се отвори формуляр"End Sub

Така ще помогнете за развитието на сайта, сподели с приятелите си

wave wave wave wave wave