De meervoudige selectie
Een meervoudige selectie is een programmadeel dat bestaat uit een meervoudige selectievoorwaarde, opgebouwd rondom een variabele of een uitdrukking en meerdere sequenties, waarvan, afhankelijk van de waarde van de selectievariabele of uitdrukking, slechts één uitgevoerd wordt.
Structogram:

Pseudo-code:
SELECTIEBLOK selectievariabele of uitdrukking
GEVAL selectievariabele1 of uitdrukking1 = … : bewerking(en)
GEVAL selectievariabele2 of uitdrukking2 = … : bewerking(en)
GEVAL selectievariabele3 of uitdrukking3 = … : bewerking(en)
GEVAL selectievariabele4 of uitdrukking4 = … : bewerking(en)
….
GEVAL selectievariabele of uitdrukking = … : bewerking(en)
ZONIET bewerking(en)
EINDE BLOK
In Access
Select Case
testexpressieCase
variabele1 of uitdrukking1Bewerking(en)
Case
variabele2 of uitdrukking2Bewerking(en)
. . .
Case Else
Bewerking(en)
End Select
De Case Else is facultatief !
Voorbeeld
Van het belastbaar inkomen mag 35000 fr. afgetrokken worden voor het eerste kind ten laste, 55000 fr. voor het tweede, 112500 fr. voor het derde. Voor het vierde kind en alle volgende kinderen is dit 125000 fr. per kind. Voer het belastbaar inkomen in en geef het nieuwe belastbaar inkomen weer, rekening houdend met de kinderlast.
Werkwijze:
Maak een nieuw formulier zonder een tabel.
In dit formulier breng je 3 tekstvakken (met labels) en één opdrachtknop. Deze tekstvakken geef je resp. de namen:
txtBelastb
txtAantalKind
txtNieuwBelastb
Beveilig het laatste tekstvak (txtNieuwBelastb) tegen overschrijven.

Breng, in een algemene module, onderstaand programma binnen en test dit uit.

Een andere mogelijke schrijfwijze van het Select-statement is:

Nog een mogelijke schrijfwijze met een ander voorbeeld:
Public Sub Voorbeeld (intVar1 as Byte)
Select Case intVar1
Case 1 to 3
Debug.Print "Variabele ligt tussen één en drie"
Case 4, 5
Debug.Print "Variabele is een vier of een vijf"
Case 6 to 8, 15 to 18,20
Debug.Print "Variabele ligt tussen 6 en 8, tussen 15 en 18 of is 20"
Case Else
Debug.Print "Dit is een variabele die niet werd voorzien"
End Select
End Sub
Test dit programma uit met het foutopsporingsvenster.
Oefeningen: