VBA-Switch-Anweisung

In diesem Artikel wird veranschaulicht, wie Sie die VBA-Switch-Anweisung verwenden.

Die VBA Switch-Anweisung wird ähnlich wie die VBA Select Case-Anweisung verwendet.

Die Syntax der Switch-Anweisung

Die switch-Anweisung wertet eine Liste von Ausdrücken aus, um festzustellen, ob sie wahr oder falsch sind, und gibt den Wert des ersten Ausdrucks zurück, der als wahr ausgewertet wird. Die Argumentliste besteht aus Paaren - einem Ausdruck und einem Wert, der zurückgegeben wird, wenn der Ausdruck als wahr ausgewertet wird.

Schalter(Ausdruck-1, Wert-1, [ expr-2, Wert-2… , [ expr-n, Wert-n ]])

Verwenden der Switch-Anweisung in einer VBA-Prozedur

Die Verwendung in einem Makro könnte dem folgenden Beispiel ähneln:

1234567 Sub TestSwitch()Dim strCompany As StringDim CompanyID As IntegerFirmen-ID = 2strCompany = Switch(CompanyID = 1, "Apple", CompanyID = 2, "IBM", CompanyID = 3, "Samsung")MsgBox strCompaniesEnd Sub

Wir deklarieren eine Integer-Variable, die die Werte aus den Ausdrücken innerhalb der switch-Anweisung enthält. Anschließend deklarieren wir eine weitere String-Variable, um den Wert zurückzugeben, der in diesem Ausdruck enthalten ist.

Verwenden der Switch-Anweisung mit einem Bereich

Anstatt den Wert, den der Switch auswerten wird, fest in den Code zu codieren, können wir einen Wert verwenden, den wir in einer Excel-Zelle gespeichert haben, um die benötigte Zeichenfolge zurückzugeben.

1234567 Sub TestSwitch()Dim strCompany As StringDim CompanyID As IntegerFirmen-ID = Bereich("A2")strCompany = Switch(CompanyID = 1, "Apple", CompanyID = 2, "IBM", CompanyID = 3, "Samsung")MsgBox strCompaniesEnd Sub

Um dieses Verfahren zu verwenden, benötigen wir eine Zahl in der Zelle A2 des Arbeitsblatts. Wir können dann das Makro ausführen, um den Namen des Unternehmens (zB Samsung) zu erhalten.

Wenn wir in Zelle A3 keine Zahl haben und den Code ausführen, wird ein Typ-Mismatch-Fehler zurückgegeben.

Erstellen einer benutzerdefinierten Funktion mit VBA-Switch

Wir können auch eine benutzerdefinierte Funktion mit VBA-Switch erstellen und in unserer Arbeitsmappe verwenden.

123 Funktion SwitchStatement(i As Integer) As StringSwitchStatement = Switch(i= 1, "Apple", i= 2, "IBM", i= 3, "Samsung")Endfunktion

Um dies in unserer Arbeitsmappe zu verwenden, können wir das Dialogfeld Funktion einfügen verwenden.

Klicken Sie in die Zelle A3 und dann in der Funktionsleiste auf Funktion einfügen.

Wählen Sie im Dialogfeld Funktion einfügen die Option Benutzerdefinierten von dem Dropdown-Liste Kategorie auswählen, und wählen Sie dann SchalterAnweisung.

Klicken OK, und dann auf Zelle klicken A2.

Der Name des Unternehmens, wie er in der Switch-Anweisung gespeichert ist, wird an unser Arbeitsblatt zurückgegeben.

Sie werden die Entwicklung der Website helfen, die Seite mit Ihren Freunden teilen

wave wave wave wave wave