Višestruko grananje
Ponekad je potrebno da ispitamo uslov pa da, u zavisnosti od ishoda, ponudimo više alternativnih akcija. U tom slučaju koristi se struktura Select-Case za višestruko grananje. Ona radi na taj način što joj se prosledi neki parametar, a u zavisnosti od njegove vrednosti izvršavaju se različiti delovi programa. Ako se vrednost parametra razlikuje od svih ponuđenih alternativa izvršava se deo koda koji se nalazi iza Else naredbe.
Sintaksa Select-Case strukture je:
Select [ Case ] <izraz>
{Case <vrednost>
[IZVRŠNI KOD]}
[Case Else
[ALTERNATIVNI KOD]]
End Select
Zamislite da treba da proverimo ocenu na osnovu rezultata testa. Potrebno je da napišemo program u kome se najpre unosi ocena, a zatim pomoću Select-Case strukture poredimo unesenu ocenu sa brojem bodova i vraćamo odgovarajuću poruku:
Dim ocena As Integer, poruka As String
ocena = InputBox(„Unesite ocenu“)
Select Case ocena
Case Is >= 90
poruka = „Odličan“
Case Is >= 80
poruka = „Vrlo dobar“
Case Is >= 70
poruka = „Dobar“
Case Is >= 60
poruka = „Dovoljan“
Case Else
poruka = „Nedovoljan“
End Select
MsgBox poruka
Kao što vidite Select-Case struktura je puno pogodnija od ugnježdene If-Then strukture ako imamo veći broj mogućih ishoda.