VBA - Benutzerdefinierte Funktionen
EIN functionist eine Gruppe von wiederverwendbarem Code, der überall in Ihrem Programm aufgerufen werden kann. Dadurch entfällt die Notwendigkeit, immer wieder denselben Code zu schreiben. Dies ermöglicht es den Programmierern, ein großes Programm in eine Reihe kleiner und verwaltbarer Funktionen zu unterteilen.
Neben integrierten Funktionen können mit VBA auch benutzerdefinierte Funktionen geschrieben werden. In diesem Kapitel erfahren Sie, wie Sie Ihre eigenen Funktionen in VBA schreiben.
Funktionsdefinition
Eine VBA-Funktion kann eine optionale return-Anweisung haben. Dies ist erforderlich, wenn Sie einen Wert von einer Funktion zurückgeben möchten.
Sie können beispielsweise zwei Zahlen in einer Funktion übergeben und dann von der Funktion erwarten, dass sie ihre Multiplikation in Ihrem aufrufenden Programm zurückgibt.
Note - Eine Funktion kann mehrere durch Komma getrennte Werte als Array zurückgeben, das dem Funktionsnamen selbst zugewiesen ist.
Bevor wir eine Funktion verwenden, müssen wir diese bestimmte Funktion definieren. Die gebräuchlichste Methode zum Definieren einer Funktion in VBA ist die Verwendung vonFunction Schlüsselwort, gefolgt von einem eindeutigen Funktionsnamen, und es kann eine Liste von Parametern und eine Anweisung mit enthalten oder nicht End FunctionSchlüsselwort, das das Ende der Funktion angibt. Es folgt die grundlegende Syntax.
Syntax
Fügen Sie eine Schaltfläche hinzu und fügen Sie die folgende Funktion hinzu.
Function Functionname(parameter-list)
statement 1
statement 2
statement 3
.......
statement n
End Function
Beispiel
Fügen Sie die folgende Funktion hinzu, die den Bereich zurückgibt. Beachten Sie, dass ein Wert / Werte mit dem Funktionsnamen selbst zurückgegeben werden können.
Function findArea(Length As Double, Optional Width As Variant)
If IsMissing(Width) Then
findArea = Length * Length
Else
findArea = Length * Width
End If
End Function
Eine Funktion aufrufen
Um eine Funktion aufzurufen, rufen Sie die Funktion unter Verwendung des Funktionsnamens auf, wie im folgenden Screenshot gezeigt.
Die Ausgabe des unten gezeigten Bereichs wird dem Benutzer angezeigt.