Den här artikeln kommer att visa hur du använder VBA Switch -uttalandet.
VBA Switch -uttalandet används på liknande sätt som VBA Select Case -uttalandet.
Syntaxen för Switch -uttalandet
Switch -satsen utvärderar en lista med uttryck för att se om de är sanna eller falska och returnerar värdet på de första uttrycken som utvärderas som sanna. Argumentlistan består av par - ett uttryck och ett värde som returneras om uttrycket utvärderas som sant.
Växla(expr-1, värde-1, [ expr-2, värde-2… , [ expr-n, värde-n ]])
Använda Switch -uttalandet i en VBA -procedur
Att använda detta i ett makro kan likna det här exemplet nedan:
1234567 | Sub TestSwitch ()Dim strCompany As StringDim CompanyID som heltalCompanyID = 2strCompany = Switch (CompanyID = 1, "Apple", CompanyID = 2, "IBM", CompanyID = 3, "Samsung")MsgBox strCompaniesAvsluta Sub |
Vi deklarerar en heltalsvariabel för att hålla värdena från uttrycken i switch -satsen. Vi deklarerar sedan en annan strängvariabel för att returnera värdet som finns i det uttrycket.
Använda switchuttalandet med ett intervall
Istället för att hårdkoda värdet som omkopplaren kommer att utvärdera till koden kan vi använda ett värde som vi har lagrat i en Excel-cell för att returnera strängen vi behöver.
1234567 | Sub TestSwitch ()Dim strCompany As StringDim CompanyID som heltalCompanyID = Range ("A2")strCompany = Switch (CompanyID = 1, "Apple", CompanyID = 2, "IBM", CompanyID = 3, "Samsung")MsgBox strCompaniesAvsluta Sub |
För att använda denna procedur måste vi ha ett nummer i cellen A2 i kalkylbladet. Vi kan sedan köra makrot för att få namnet på företaget (dvs. Samsung).
Om vi inte har ett nummer i cell A3 och vi kör koden, returneras ett felmeddelande om felaktig typ.
Skapa en anpassad funktion med VBA -switch
Vi kan också skapa en anpassad funktion med VBA -switch och använda den i vår arbetsbok.
123 | Funktion SwitchStatement (i som heltal) som strängSwitchStatement = Switch (i = 1, "Apple", i = 2, "IBM", i = 3, "Samsung")Avsluta funktion |
För att använda detta i vår arbetsbok kan vi använda dialogrutan Infoga funktion.
Klicka i cellen A3 och klicka sedan på Infoga funktion i funktionsfältet.
Välj i dialogrutan Infoga funktion Användardefinierad från Välj rullgardinsmenyn Kategorioch välj sedan SwitchStatement.
Klick OK, och klicka sedan på cell A2.
Företagets namn, så som det lagras i Switch -uttalandet kommer att returneras till vårt kalkylblad.