Evaluează o listă de expresii și returnează o valoare variant sau o expresie asociată cu prima expresie din listă care este adevărată.
Sintaxă
Switch(expr-1, valoare-1 [, expr-2, valoare-2 ] ... [, expr-n, valoare-n ] )
Sintaxa funcției Switch are următoarele argumente:
| Argument | Descriere |
|---|---|
| expr | Obligatoriu. Expresia variant pe care doriți să o evaluați. |
| valoare | Obligatoriu. Valoarea sau expresia de returnat dacă expresia corespondentă este True. |
Observații
Lista de argumente a funcției Switch este formată din perechi de expresii și valori. Expresiile sunt evaluate de la stânga la dreapta și se returnează valoarea asociată primei expresii de evaluat ca adevărată . Dacă părțile nu sunt asociate corect, se produce o eroare la momentul rulării. De exemplu, dacă expr-1 este True, Switch returnează valoare-1. Dacă expr-1 este fals, dar expr-2 este adevărat, Switch returnează valoarea-2 și așa mai departe.
Switch returnează o valoare nulă dacă:
- Niciuna dintre expresii nu este True.
- Prima expresie True are o valoare corespunzătoare nulă.
Comutator evaluează toate expresiile, chiar dacă returnează doar una dintre ele. Din acest motiv, ar trebui să fiți atenți la efectele secundare nedorite. De exemplu, dacă evaluarea oricărei expresii are ca rezultat o eroare de împărțire la zero, se produce o eroare.
Exemplu de interogare
| expresie | Rezultatele |
|---|---|
| SELECT ProductSales.ProductID, Switch([ProductID]="PRO_XYZ1","First",[ProductID]="PRO_XYZ2","Two",[ProductID]="PRO_XYZ1","Ten") AS testSwitch FROM ProductSales; | Returnează "ProductID", evaluează expresiile din formula "Switch" și comută valorile existente cu valori definite pentru toate expresiile "True". De exemplu: "PRO_XYZ1" este înlocuit cu "Primul", "PRO_XYZ2" este înlocuit cu "Doi" și așa mai departe. |
Exemplu VBA
Notă
Exemplele care urmează demonstrează utilizarea acestei funcții într-un modul Visual Basic for Applications (VBA). Pentru mai multe informații despre lucrul cu VBA, selectați Referințe pentru dezvoltatori în lista verticală de lângă Căutare și introduceți unul sau mai mulți termeni în caseta de căutare.
Acest exemplu utilizează funcția Switch pentru a returna numele unei limbi care se potrivește cu numele unui oraș.
Function MatchUp (CityName As String)
Matchup = Switch(CityName = "London", "English", _
CityName = "Rome", "Italian", _
CityName = "Paris", "French")
End Function