Select Case, instructie

       

Voert een van meerdere groepen instructies uit, afhankelijk van de waarde van een expressie.

Syntaxis

Select Case testexpressie
[Case expressielijst-n
[instructies-n]] ...
[Case Else
[andersinstructies]]

End Select

De instructie Select Case heeft de volgende argumenten:

Onderdeel Beschrijving
testexpressie Vereist. Een willekeurige numerieke expressie of reeksexpressie.
expressielijst-n Vereist als Case voorkomt. Door komma's gescheiden lijst volgens een of meer van de volgende vormen: expressie, expressie To expressie, Is vergelijkingsoperator expressie. Het sleutelwoord To geeft een bereik met waarden op. Als u het sleutelwoord To gebruikt, moet de kleinere waarde v≤≤r To worden genoemd. Gebruik het sleutelwoord Is met vergelijkingsoperatoren (behalve Is en Like) om een bereik van waarden op te geven. Als er niets wordt opgegeven, wordt het sleutelwoord Is automatisch ingevoegd.
Instructies-n Optioneel. Een of meer instructies die worden uitgevoerd als testexpressie overeenkomt met een willekeurig deel van expressielijst-n.
andersinstructies Optioneel. Een of meer instructies die worden uitgevoerd als testexpressie niet overeenkomt met een willekeurige Case-zin.

Notities

Als testexpressie overeenkomt met een expressie van Case expressielijst worden de instructies die volgen op die Case-zin uitgevoerd tot aan de volgende Case-zin of, voor de laatste zin, tot aan End Select. De besturing wordt dan overgedragen aan de instructie die volgt op End Select. Als testexpressie in meer dan een Case-zin overeenkomt met een expressie van expressielijst, worden alleen de instructies uitgevoerd die volgen op de eerste overeenkomst.

De zin Case Else wordt gebruikt om andersinstructies aan te geven die moeten worden uitgevoerd als er geen overeenkomst wordt gevonden tussen de testexpressie en een expressielijst in een van de andere Case selecties. Hoewel dit niet is vereist, is het een goed idee om een instructie Case Else op te nemen in uw Select Case-blok zodat onvoorziene waarden van testexpressie geen problemen opleveren. Als geen Case expressielijst overeenkomt met testexpressie en er geen instructie Case Else is, gaat de uitvoering verder met de instructie die volgt op End Select.

In elke Case-zin kunt u meerdere expressies of bereiken opgeven. De volgende regel is bijvoorbeeld geldig:

Case 1 To 4, 7 To 9, 11, 13, Is > MaxNumber

Opmerking De vergelijkingsoperator Is is niet hetzelfde als het sleutelwoord Is van de instructie Select Case.

U kunt ook bereiken en meervoudige expressies opgeven voor tekenreeksen. In het volgende voorbeeld maakt Case een vergelijking tussen reeksen die precies gelijk zijn aan alles, reeksen die in alfabetische volgorde tussen nootjes en soep vallen en de huidige waarde van TestItem:

Case "alles", "nootjes" To "soep", TestItem

Instructies Select Case kunnen worden genest. Elke geneste instructie Select Case moet een bijbehorende instructie End Select hebben.