Freigeben über


GoSub... Return-Anweisung

Verzweigt zu einer Subroutine in einer Prozedur, und kehrt von dieser zurück.

Syntax

GoSub-Zeile
... Linie
Linie...
Return

Das Line-Argument kann eine beliebige Zeilenbezeichnung oder Zeilennummer sein.

Hinweise

Verwenden Sie GoSub und Return überall in einer Prozedur, aber GoSub und die entsprechende Return-Anweisung müssen sich in derselben Prozedur befinden. Eine Subroutine kann mehrere Return-Anweisungen enthalten, die erste angetroffene Return-Anweisung führt jedoch dazu, dass die Ausführung zu der Anweisung zurückkehrt, die direkt auf die zuletzt ausgeführte GoSub-Anweisung folgt.

Hinweis

[!HINWEIS] Sie können nicht in Sub -Prozeduren mit GoSub...Return springen oder diese verlassen.

Tipp

Das Erstellen von getrennten Prozeduren, die aufgerufen werden, ist eventuelle eine strukturiertere Alternative zur Verwendung von GoSub...Return.

Beispiel

In diesem Beispiel wird mit GoSub eine Subroutine in einer Sub -Prozedur aufgerufen. Die Return -Anweisung führt dazu, dass die Ausführung an der Anweisung wieder aufgenommen wird, die direkt auf die GoSub -Anweisung folgt. Die Exit Sub-Anweisung wird verwendet, um zu verhindern, dass die Steuerung versehentlich in die Unterroutine überfließt.

Sub GosubDemo() 
Dim Num 
' Solicit a number from the user. 
 Num = InputBox("Enter a positive number to be divided by 2.") 
' Only use routine if user enters a positive number. 
 If Num > 0 Then GoSub MyRoutine 
 Debug.Print Num 
 Exit Sub ' Use Exit to prevent an error. 
MyRoutine: 
 Num = Num/2 ' Perform the division. 
 Return ' Return control to statement. 
End Sub ' following the GoSub statement. 

Siehe auch

Support und Feedback

Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.