Как использовать оператор goto в коде vba?

Оператор VBA GoTo помогает выполнению кода перейти к определенной строке процедуры. Проще говоря, с помощью оператора goto VBA переходит к определенной строке, которую вы указали. Например, если вы указали переход на вторую строку, go перейдет на эту строку.

Как использовать оператор VBA GoTo в коде

  1. Во-первых, вам нужно использовать оператор goto.
  2. После этого вам нужно определить, куда вы хотите, чтобы VBA перешел от перехода.
  3. Далее создайте тег для создания этого места в процедуре.
  4. В конце добавьте строки кода, которые хотите запустить.
vba-go-to-statement-in-code
 Sub vba_goto() GoTo Last Range ("A1"). Select Last : Range ("A12"). Select End Sub

GoTo, чтобы повторить код

Вы также можете использовать оператор go to для повторения кода с использованием набора условий.

 Sub goto_repeat() Dim iMessage As String Question:    iMessage = InputBox("what's the day today?") If iMessage <> "tuesday" Then    MsgBox ("wrong answer, try again.") GoTo Question Else    MsgBox ("that's the right answer.") End If End Sub

Когда вы запустите приведенный выше код, он запросит у вас название дня, и если вы введете что-нибудь кроме «вторника», вопрос будет повторен. Если вы посмотрите на код, то увидите, что нам нужно использовать оператор goto и оператор if .

Теперь, когда пользователь вводит что-либо, кроме правильного ответа, оператор goto заставляет VBA повторить код. (но всякий раз, когда вы используете этот тип кодов, вы должны быть очень осторожны, потому что это может создать бесконечный цикл.

VBA Перейти в конец

Вы также можете выйти из подпрограммы, используя оператор goto.

vba-перейти в конец

В приведенном выше коде мы использовали тег «last» непосредственно перед оператором завершения, и когда VBA достигает оператора GoTo, он заставляет VBA перейти к «Last» в конце процедуры.

Оператор GoTo для перехода на строку в другой подпрограмме

Что ж, оператор Go to очень удобен для того, чтобы заставить VBA перейти из одного места в другое, но невозможно заставить его перейти к другой процедуре в модуле .

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *