Denne artikkelen vil demonstrere hvordan du bruker VBA Switch -setningen.
VBA Switch -setningen brukes på lignende måte som VBA Select Case -setningen.
Syntaksen til switch -erklæringen
Byttesetningen evaluerer en liste med uttrykk for å se om de er sanne eller usanne, og returnerer verdien av de første uttrykkene som er evaluert som sanne. Argumentlisten består av par - et uttrykk og en verdi som returneres hvis uttrykket blir vurdert som sant.
Bytte om(expr-1, verdi-1, [ expr-2, verdi-2… , [ expr-n, verdi-n ]])
Bruke Switch -setningen i en VBA -prosedyre
Å bruke dette i en makro kan være likt dette eksemplet nedenfor:
1234567 | Sub TestSwitch ()Dim strCompany As StringDim CompanyID som heltallCompanyID = 2strCompany = Switch (CompanyID = 1, "Apple", CompanyID = 2, "IBM", CompanyID = 3, "Samsung")MsgBox strCompaniesSlutt Sub |
Vi erklærer en heltallsvariabel for å holde verdiene fra uttrykkene i switch -setningen. Vi erklærer deretter en annen strengvariabel for å returnere verdien som er inneholdt i det uttrykket.
Bruke brytererklæringen med et område
I stedet for å hardkode verdien som bryteren skal evaluere til koden, kan vi bruke en verdi som vi har lagret i en Excel-celle for å returnere strengen vi trenger.
1234567 | Sub TestSwitch ()Dim strCompany As StringDim CompanyID som heltallCompanyID = Range ("A2")strCompany = Switch (CompanyID = 1, "Apple", CompanyID = 2, "IBM", CompanyID = 3, "Samsung")MsgBox strCompaniesSlutt Sub |
For å bruke denne prosedyren må vi ha et tall i cellen A2 i regnearket. Vi kan deretter kjøre makroen for å få navnet på selskapet (dvs. Samsung).
Hvis vi ikke har et nummer i celle A3 og vi kjører koden, blir det en feilmelding som ikke samsvarer.
Opprette en egendefinert funksjon med VBA -bryter
Vi kan også lage en tilpasset funksjon ved hjelp av VBA -svitsj og bruke den i arbeidsboken vår.
123 | Funksjon SwitchStatement (i As Integer) As StringSwitchStatement = Switch (i = 1, "Apple", i = 2, "IBM", i = 3, "Samsung")Sluttfunksjon |
For å bruke dette i arbeidsboken vår, kan vi bruke dialogboksen Sett inn funksjon.
Klikk i cellen A3, og klikk deretter på Sett inn funksjon i funksjonslinjen.
Velg dialogboksen Sett inn funksjon Brukerdefinert fra Velg Kategori rullegardinliste, og velg deretter SwitchStatement.
Klikk OK, og klikk deretter på cellen A2.
Navnet på selskapet, slik det er lagret i bytteerklæringen, blir returnert til regnearket vårt.