Wie verwende ich die GoSub…Return-Anweisung in VBA?

In VBA wird die `GoSub…Return`-Anweisung verwendet, um eine Art von untergeordnetem Verfahren innerhalb einer Prozedur auszuführen. Diese Struktur erlaubt es, Codeabschnitte auszuführen und dann an den Punkt zurückzukehren, von dem aus sie aufgerufen wurden. Es ist wichtig zu beachten, dass `GoSub…Return` in der modernen Programmierung in der Regel nicht empfohlen wird, da es die Lesbarkeit und Wartbarkeit des Codes erschwert. Stattdessen sollten Sie Subroutinen oder Funktionen verwenden.

Wenn Sie dennoch `GoSub…Return` verwenden möchten, sieht die Syntax folgendermaßen aus:

Sub Beispiel()
    Dim Zahl As Integer
    Zahl = 5
    GoSub Prozedur1  ' Springen Sie zu Prozedur1
    
    Exit Sub         ' Beenden Sie das Sub, um unbeabsichtigte Ausführung zu vermeiden

Prozedur1:
    Zahl = Zahl + 10
    Debug.Print Zahl
    Return           ' Kehren Sie zu der Zeile nach dem GoSub zurück
End Sub

In diesem Beispiel:

  • Die `GoSub`-Anweisung springt zu einem benannten Codeabschnitt innerhalb der gleichen Prozedur.
  • Der Abschnitt nach der benannten Prozedur wird bis zur `Return`-Anweisung ausgeführt.
  • Die `Return`-Anweisung kehrt zur nächsten Anweisung nach `GoSub` zurück.
  • Es ist wichtig, ein `Exit Sub` vor der definierten “Prozedur” einzufügen, um zu verhindern, dass der Code nach Abschluss der Unterprozedur erneut ausgeführt wird, falls der Programmablauf das Ende der Hauptprozedur erreicht.

Verwenden Sie diesen Ansatz mit Vorsicht und überlegen Sie, ob es sinnvoller wäre, den Code in separate Subroutinen oder Funktionen zu unterteilen.

Unlock Your Potential

Excel

Basic - Advanced

Access

Access Basic - Advanced

Power BI

Power BI Basic - Advanced

Help us grow the project