So verwenden Sie die Select Case-Struktur in Excel 2016 VBA

So verwenden Sie die Select Case-Struktur in Excel 2016 VBA

Die Select Case-Struktur ist eine nützliche VBA-Struktur für Entscheidungen mit drei oder mehr Optionen in Excel 2016 (obwohl sie auch mit zwei Optionen funktioniert und eine Alternative zur If-Then-Else-Struktur bietet).

A Select Case-Beispiel

Das folgende Beispiel zeigt die Verwendung der Select Case-Struktur:

Unter ShowDiscount3()
  Dim Menge so lang
  Dim-Rabatt als Double
  Menge = InputBox(“Menge eingeben:“)
  Kartonmenge auswählen
    Fall 0 bis 24
      Rabatt = 0,1
    Fall 25 bis 49
      Rabatt = 0,15
    Gehäuse 50 bis 74
      Rabatt = 0,2
    Fall ist >= 75
      Rabatt = 0,25
  Auswahl beenden
  MsgBox „Rabatt:“ & Rabatt
End Sub

In diesem Beispiel wird die Variable Menge ausgewertet. Die Routine prüft auf vier verschiedene Fälle (0–24, 25–49, 50–74 und 75 oder mehr).

Auf jede Case-Anweisung können beliebig viele Anweisungen folgen, die alle ausgeführt werden, wenn der Fall wahr ist. Wenn Sie wie in diesem Beispiel nur eine Anweisung verwenden, können Sie die Anweisung in derselben Zeile wie das Schlüsselwort Case platzieren, wobei ein Doppelpunkt vorangestellt wird – das Trennzeichen für die VBA-Anweisung. Dadurch wird der Code kompakter und etwas übersichtlicher. So sieht die Routine in diesem Format aus:

Unter ShowDiscount4 ()
  Dim Menge so lang
  Dim-Rabatt als Double
  Menge = InputBox(“Menge eingeben:“)
  Kartonmenge auswählen
    Fall 0 bis 24: Rabatt = 0,1
    Fall 25 bis 49: Rabatt = 0,15
    Fall 50 bis 74: Rabatt = 0,2
    Fall ist >= 75: Rabatt = 0,25
  Auswahl beenden
  MsgBox „Rabatt:“ & Rabatt
End Sub

Wenn VBA eine Select Case-Struktur ausführt, wird die Struktur verlassen, sobald VBA einen wahren Fall findet und die Anweisungen für diesen Fall ausführt.

Ein verschachteltes Select Case-Beispiel

Wie im folgenden Beispiel gezeigt, können Sie Select Case-Strukturen verschachteln. Diese Routine untersucht die aktive Zelle und zeigt eine Nachricht an, die den Inhalt der Zelle beschreibt. Beachten Sie, dass die Prozedur drei Select Case-Strukturen hat, und jede hat ihre eigene End Select-Anweisung:

Unter CheckCell()
  Dim Msg As String
  Wählen Sie Fall ist leer (ActiveCell)
    Fall wahr
     Msg = "ist leer."
    Fall sonst
     Wählen Sie Case ActiveCell.HasFormula
       Fall wahr
        Msg = „hat eine Formel“
       Fall sonst
        Wählen Sie Case IsNumeric(ActiveCell)
          Fall wahr
           Msg = „hat eine Nummer“
          Fall sonst
           Msg = „hat Text“
        Auswahl beenden
    Auswahl beenden
  Auswahl beenden
  MsgBox „Cell“ & ActiveCell.Address & „“ & Msg
End Sub

Die Logik geht ungefähr so:

Finden Sie heraus, ob die Zelle leer ist.

Wenn es nicht leer ist, prüfen Sie, ob es eine Formel enthält.

Wenn keine Formel vorhanden ist, finden Sie heraus, ob sie einen numerischen Wert oder Text enthält.

Wenn die Routine endet, enthält die Variable Msg eine Zeichenfolge, die den Inhalt der Zelle beschreibt. Die MsgBox-Funktion zeigt diese Nachricht an.

So verwenden Sie die Select Case-Struktur in Excel 2016 VBA

Eine Nachricht, die von der CheckCell-Prozedur angezeigt wird.

Sie können Select Case-Strukturen beliebig tief verschachteln, aber stellen Sie sicher, dass jede Select Case-Anweisung eine entsprechende End Select-Anweisung hat.

Wenn Sie immer noch nicht davon überzeugt sind, dass sich das Einrücken von Code lohnt, dient die vorherige Auflistung als gutes Beispiel. Die Einrückungen machen die Verschachtelungsebenen wirklich deutlich. Sehen Sie sich das gleiche Verfahren ohne Einrückung an:

Unter CheckCell()
Dim Msg As String
Wählen Sie Fall ist leer (ActiveCell)
Fall wahr
Msg = "ist leer."
Fall sonst
Wählen Sie Case ActiveCell.HasFormula
Fall wahr
Msg = „hat eine Formel“
Fall sonst
Wählen Sie Case IsNumeric(ActiveCell)
Fall wahr
Msg = „hat eine Nummer“
Fall sonst
Msg = „hat Text“
Auswahl beenden
Auswahl beenden
Auswahl beenden
MsgBox „Cell“ & ActiveCell.Address & „“ & Msg
End Sub

Ziemlich unverständlich, oder?


Smartsheet 9.1.1

Smartsheet 9.1.1

Smartsheet ist eine dynamische Arbeitsplattform, mit der Sie Projekte verwalten, Arbeitsabläufe erstellen und mit Ihrem Team zusammenarbeiten können.

SharePoint

SharePoint

SharePoint ist ein webbasiertes Kollaborationssystem, das eine Vielzahl von Workflow-Anwendungen, „Listen“-Datenbanken und anderen Webkomponenten sowie Sicherheitsfunktionen verwendet, um die Zusammenarbeit von Unternehmensgruppen zu steuern.

Ewiger Kalender 1.0.38/1.0.36

Ewiger Kalender 1.0.38/1.0.36

Van Nien Calendar ist eine Kalenderanzeigeanwendung auf Ihrem Telefon, die Ihnen hilft, schnell das Monddatum auf Ihrem Telefon zu sehen und so Ihre wichtige Arbeit zu ordnen.

Microsoft Outlook 2021

Microsoft Outlook 2021

Microsoft Outlook ist eine Geschäfts- und Produktivitätsanwendung, die von der Microsoft Corporation entwickelt wurde.

ClickUp

ClickUp

ClickUp ist eine der am höchsten bewerteten Produktivitätsplattformen für jedes Unternehmen. Große Unternehmen wie Google, Booking.com, San Diego Padres und Uber nutzen ClickUp, um die Produktivität am Arbeitsplatz zu steigern.

PDF-XChange Viewer 2.5.322.10

PDF-XChange Viewer 2.5.322.10

PDF ist zu einem häufig verwendeten Format zum Lesen, Erstellen und Senden von Textdokumenten geworden. Im Gegenzug hat die Zahl der für diese Art der Dokumentation eingesetzten Programme zugenommen. PDF-XChange Viewer gehört zu einer wachsenden Zahl von PDF-Viewern.

Apache OpenOffice

Apache OpenOffice

Apache OpenOffice bietet eine vollständige Suite von Office-Anwendungen, die mit Microsoft 365 konkurrieren können, insbesondere in Excel, PowerPoint und Word. Es ermöglicht Ihnen eine effektivere Verwaltung Ihrer Projekte und unterstützt mehrere Dateiformate.

Laden Sie iTaxviewer 1.8.7 herunter

Laden Sie iTaxviewer 1.8.7 herunter

Die iTaxViewer-Software ist heute die beliebteste Software zum Lesen von XML-Dateien. Bei dieser Software handelt es sich um eine Anwendung zum Lesen elektronischer Steuererklärungen im XML-Format des General Department of Taxation.

Nitro PDF Reader

Nitro PDF Reader

Nitro PDF Reader ist ein praktischer PDF-Editor, der alle grundlegenden Aufgaben abdeckt, die die meisten Menschen täglich mit PDF-Dokumenten ausführen.

Foxit Reader 12

Foxit Reader 12

Foxit Reader ist in erster Linie ein PDF-Reader und ermöglicht Ihnen außerdem, PDF-Dateien zu erstellen, sie zu signieren, zu bearbeiten und Anmerkungen hinzuzufügen. Es funktioniert auf Betriebssystemen, es gibt Plugins für verschiedene Programme aus dem Microsoft Office-Paket.