Novērtē izteiksmju sarakstu un atgriež Variant vērtību vai izteiksmi, kas saistīta ar pirmo izteiksmi sarakstā, kuras vērtība ir True.
Sintakse
Switch( expr-1, vērtība-1 [, expr-2, vērtība-2 ] ... [, expr-n, vērtība-n ] )
Funkcijas Switch sintaksē ir šādi argumenti:
Arguments |
Apraksts |
izteiksme |
Obligāts. Varianta izteiksme, kuru vēlaties novērtēt. |
vērtība |
Obligāts arguments. Vērtība vai izteiksme, kas ir jāatgriež, ja attiecīgā izteiksme ir True. |
Piezīmes
Funkciju Switcharguments sastāv no izteiksmju un vērtību pāriem. Izteiksmes tiek novērtētas no kreisās puses uz labo pusi, un tiek atgriezta vērtība, kas saistīta ar pirmo izteiksmi, lai to novērtētu kā patiess. Ja daļas nav pareizi savienotas pārī, tiek izpildes laika kļūda pārī. Piemēram, ja expr-1 ir True, slēdzisatgriež vērtību-1. Ja expr-1ir False, bet izteiksme-2 ir True, slēdzis atgriež vērtība-2 utt.
Switch atgriež vērtību Null, ja:
-
Neviena izteiksme nav True.
-
Pirmajai true izteiksmei ir atbilstoša vērtība, kas ir Null.
Switch novērtē visas izteiksmes, kaut gan tā atgriež tikai vienu no tām. Šī iemesla dēļ jāuzmanās, vai blakus efekti ir labi. Piemēram, ja izteiksmes novērtējuma rezultātā tiek dalīts ar nulles kļūdu, rodas kļūda.
Vaicājuma piemērs
Izteiksme |
Rezultāti |
SELECT ProductSales.ProductID, Switch([Produkta_ID]="PRO_XYZ1","Pirmais",[Produkta_ID]="PRO_XYZ2","Divi",[Produkta_ID]="PRO_XYZ1","Desmit") AS pārbaudePārslēgoties FROM ProductSales; |
Atgriež "Produkta_ID", novērtē formulas "Pārslēgt" izteiksmes un pārslēdz esošās vērtības ar definētajām vērtībām visām izteiksmēm "True". Piemēram: "PRO_XYZ1" aizstāj "First", "PRO_XYZ2" aizstāj ar "Two" utt. |
VBA piemērs
Piezīme.: Turpmākajos piemēros redzama šīs funkcijas izmantošana Visual Basic for Applications (VBA) modulī. Lai iegūtu papildinformāciju par darbu ar VBA, nolaižamajā sarakstā atlasiet Uzziņas materiāli izstrādātājiem blakus meklēšanas lodziņam un ievadiet šajā lodziņā vienu vai vairākus vārdus.
Šajā piemērā funkcija Switch tiek izmantota, lai atgrieztu valodas nosaukumu, kas atbilst pilsētas nosaukumam.
Function MatchUp (CityName As String)
Matchup = Switch(CityName = "London", "English", _ CityName = "Rome", "Italian", _ CityName = "Paris", "French") End Function