Freigeben über


Gewusst wie: Erstellen einer Prozedur (Visual Basic)

Sie schließen eine Prozedur zwischen einer Startdeklarationsanweisung (Sub oder Function) und einer Enddeklarationsanweisung (End Sub oder End Function) ein. Der gesamte Code der Prozedur befindet sich zwischen diesen Anweisungen.

Eine Prozedur kann keine andere Prozedur enthalten, sodass sich ihre Anfangs- und Endanweisungen außerhalb jeder anderen Prozedur befinden müssen.

Wenn Sie über Code verfügen, der dieselbe Aufgabe an verschiedenen Stellen ausführt, können Sie den Task einmal als Prozedur schreiben und dann von verschiedenen Stellen im Code aufrufen.

So erstellen Sie eine Prozedur, die keinen Wert zurückgibt

  1. Verwenden Sie außerhalb einer anderen Prozedur eine Sub-Anweisung, gefolgt von einer End Sub-Anweisung.

  2. Lassen Sie in der Sub-Anweisung auf das Schlüsselwort Sub den Namen der Prozedur folgen, dann die Parameterliste in Klammern.

  3. Platzieren Sie die Codeanweisungen der Prozedur zwischen den Anweisungen Sub und End Sub.

So erstellen Sie eine Prozedur, die einen Wert zurückgibt

  1. Verwenden Sie außerhalb einer anderen Prozedur eine Function-Anweisung, gefolgt von einer End Function-Anweisung.

  2. Lassen Sie in der Function-Anweisung auf das Schlüsselwort Function den Namen der Prozedur folgen, dann die Parameterliste in Klammern und dann eine As-Klausel, die den Datentyp des Rückgabewerts angibt.

  3. Platzieren Sie die Codeanweisungen der Prozedur zwischen den Anweisungen Function und End Function.

  4. Verwenden Sie eine Return-Anweisung, um den Wert an den aufrufenden Code zurückzugeben.

So verbinden Sie Ihre neue Prozedur mit den alten, sich wiederholenden Codeblöcken

  1. Stellen Sie sicher, dass Sie die neue Prozedur an einer Stelle definieren, an der der alte Code darauf zugreifen kann.

  2. Ersetzen Sie in Ihrem alten, sich wiederholenden Codeblock die Anweisungen, die die sich wiederholende Aufgabe ausführen, durch eine einzelne Anweisung, die die Prozedur Sub oder Function aufruft.

  3. Wenn ihre Prozedur eine Function ist, die einen Wert zurückgibt, stellen Sie sicher, dass Ihre aufrufende Anweisung eine Aktion mit dem zurückgegebenen Wert ausführt, z. B. das Speichern in einer Variablen, da der Wert andernfalls verloren geht.

Beispiel

Die folgende Function-Prozedur berechnet die längste Seite bzw. Hypotenuse eines rechtwinkligen Dreiecks, wenn die Werte für die anderen beiden Seiten angegeben sind:

Function Hypotenuse(side1 As Double, side2 As Double) As Double
    Return Math.Sqrt((side1 ^ 2) + (side2 ^ 2))
End Function

Weitere Informationen