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
Verwenden Sie außerhalb einer anderen Prozedur eine
Sub
-Anweisung, gefolgt von einerEnd Sub
-Anweisung.Lassen Sie in der
Sub
-Anweisung auf das SchlüsselwortSub
den Namen der Prozedur folgen, dann die Parameterliste in Klammern.Platzieren Sie die Codeanweisungen der Prozedur zwischen den Anweisungen
Sub
undEnd Sub
.
So erstellen Sie eine Prozedur, die einen Wert zurückgibt
Verwenden Sie außerhalb einer anderen Prozedur eine
Function
-Anweisung, gefolgt von einerEnd Function
-Anweisung.Lassen Sie in der
Function
-Anweisung auf das SchlüsselwortFunction
den Namen der Prozedur folgen, dann die Parameterliste in Klammern und dann eineAs
-Klausel, die den Datentyp des Rückgabewerts angibt.Platzieren Sie die Codeanweisungen der Prozedur zwischen den Anweisungen
Function
undEnd Function
.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
Stellen Sie sicher, dass Sie die neue Prozedur an einer Stelle definieren, an der der alte Code darauf zugreifen kann.
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
oderFunction
aufruft.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