Wie verwende ich die goto-anweisung im vba-code?

Die VBA-GoTo-Anweisung hilft der Codeausführung, zu einer bestimmten Zeile in der Prozedur zu navigieren. Vereinfacht ausgedrückt springt VBA mit der goto-Anweisung zu einer bestimmten Zeile, die Sie angegeben haben. Wenn Sie beispielsweise angegeben haben, dass zur zweiten Zeile gesprungen werden soll, springt go zu dieser Zeile.

So verwenden Sie die VBA-GoTo-Anweisung im Code

  1. Zuerst müssen Sie die goto-Anweisung verwenden.
  2. Danach müssen Sie definieren, wohin VBA von „Gehe zu“ gehen soll.
  3. Als nächstes erstellen Sie das Tag, um diese Stelle in der Prozedur zu erstellen.
  4. Fügen Sie am Ende die Codezeile(n) hinzu, die Sie ausführen möchten.
vba-go-to-statement-in-code
 Sub vba_goto() GoTo Last Range ("A1"). Select Last : Range ("A12"). Select End Sub

Gehen Sie zu, um einen Code zu wiederholen

Sie können die go to-Anweisung auch verwenden, um Code mithilfe einer Reihe von Bedingungen zu wiederholen.

 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

Wenn Sie den obigen Code ausführen, werden Sie nach dem Namen des Tages gefragt. Wenn Sie etwas anderes als „Dienstag“ eingeben, wird die Frage wiederholt. Wenn Sie sich den Code ansehen, können Sie sehen, dass wir die goto-Anweisung und die if-Anweisung verwenden müssen.

Wenn der Benutzer nun etwas anderes als die richtige Antwort eingibt, zwingt die goto-Anweisung VBA dazu, den Code zu wiederholen. (Aber wenn Sie diese Art von Code verwenden, müssen Sie sehr vorsichtig sein, da dies zu einer Endlosschleife führen kann.

VBA Gehe zum Ende

Sie können ein Sub auch mit der goto-Anweisung verlassen.

vba-gehe zum Ende

Im obigen Code haben wir das Tag „last“ direkt vor der End-Anweisung verwendet. Wenn VBA die GoTo-Anweisung erreicht, springt VBA am Ende der Prozedur zum „Last“.

GoTo-Anweisung, um zu einer Zeile in einer anderen Unterroutine zu wechseln

Nun, die Going-to-Anweisung ist sehr praktisch, um VBA von einer Stelle zur anderen springen zu lassen, aber es ist nicht möglich, sie zu einer anderen Prozedur im Modul springen zu lassen.

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert