Juhtjuhtude valimise struktuuri kasutamine Excel 2016 VBA-s

Struktuur Select Case on kasulik VBA-struktuur otsuste tegemiseks, mis hõlmavad Excel 2016 kolme või enama valikut (kuigi see töötab ka kahe valikuga, pakkudes alternatiivi struktuurile If-Then-Else).

A Select Case näide

Järgmine näide näitab, kuidas kasutada struktuuri Select Case:

Sub ShowDiscount3()
  Hämar kogus nii kaua
  Hämar allahindlus kahekordsena
  Kogus = InputBox ("Sisesta kogus: ")
  Valige Juhtumi kogus
    Juhtum 0 kuni 24
      Allahindlus = 0,1
    Juhtum 25 kuni 49
      Allahindlus = 0,15
    Juhtum 50 kuni 74
      Allahindlus = 0,2
    Juhtum on >= 75
      Allahindlus = 0,25
  Lõpeta Vali
  MsgBox “Allahindlus: “ & Allahindlus
Lõpeta alam

Selles näites hinnatakse muutujat Kogus. Rutiinne kontroll kontrollib nelja erinevat juhtumit (0–24, 25–49, 50–74 ja 75 või rohkem).

Igale juhtumilausele võib järgneda suvaline arv avaldusi ja need kõik täidetakse, kui juhtum on tõene. Kui kasutate ainult ühte lauset, nagu selles näites, saate selle panna samale reale märksõnaga Case, millele eelneb koolon – VBA-lause eraldaja. See muudab koodi kompaktsemaks ja natuke selgemaks. Selles vormingus rutiin näeb välja järgmine:

Sub ShowDiscount4 ()
  Hämar kogus nii kaua
  Hämar allahindlus kahekordsena
  Kogus = InputBox ("Sisesta kogus: ")
  Valige Juhtumi kogus
    Juhtum 0 kuni 24: allahindlus = 0,1
    Juhtum 25 kuni 49: allahindlus = 0,15
    Juhtum 50 kuni 74: allahindlus = 0,2
    Juhtum on >= 75: allahindlus = 0,25
  Lõpeta Vali
  MsgBox “Allahindlus: “ & Allahindlus
Lõpeta alam

Kui VBA käivitab Select Case struktuuri, väljutakse struktuurist niipea, kui VBA leiab tõelise juhtumi ja täidab selle juhtumi laused.

Pesastatud Select Case näide

Nagu on näidatud järgmises näites, saate pesastada Select Case struktuure. See rutiin uurib aktiivset lahtrit ja kuvab lahtri sisu kirjeldava teate. Pange tähele, et protseduuril on kolm Select Case struktuuri ja igaühel neist on oma End Select lause:

Sub CheckCell()
  Hämarda sõnum stringina
  Valige Case IsEmpty (ActiveCell)
    Juhtum tõsi
     Msg = "on tühi."
    Juhtum muu
     Valige Case ActiveCell.HasFormula
       Juhtum tõsi
        Msg = "on valem"
       Juhtum muu
        Valige suurtäht ja arv (ActiveCell)
          Juhtum tõsi
           Sõnum = "on number"
          Juhtum muu
           Sõnum = "on tekst"
        Lõpeta Vali
    Lõpeta Vali
  Lõpeta Vali
  Sõnumikast "Cell " & ActiveCell.Address & " " & Msg
Lõpeta alam

Loogika on umbes selline:

Uurige, kas lahter on tühi.

Kui see pole tühi, vaadake, kas see sisaldab valemit.

Kui valemit pole, uurige, kas see sisaldab numbrilist väärtust või teksti.

Kui rutiin lõpeb, sisaldab muutuja Msg stringi, mis kirjeldab lahtri sisu. Funktsioon MsgBox kuvab selle teate.

Juhtjuhtude valimise struktuuri kasutamine Excel 2016 VBA-s

CheckCelli protseduuriga kuvatav teade.

Saate pesastada Select Case struktuure nii sügavalt kui vaja, kuid veenduge, et igal Select Case lausel oleks vastav lause Lõpp.

Kui te pole ikka veel veendunud, et koodi taandumine on vaeva väärt, on eelmine loend hea näide. Süvendid tõesti selleks, et pesitsustasemed selgeks teha. Vaadake sama protseduuri ilma taandeta:

Sub CheckCell()
Hämarda sõnum stringina
Valige Case IsEmpty (ActiveCell)
Juhtum tõsi
Msg = "on tühi."
Juhtum muu
Valige Case ActiveCell.HasFormula
Juhtum tõsi
Msg = "on valem"
Juhtum muu
Valige suurtäht ja arv (ActiveCell)
Juhtum tõsi
Sõnum = "on number"
Juhtum muu
Sõnum = "on tekst"
Lõpeta Vali
Lõpeta Vali
Lõpeta Vali
Sõnumikast "Cell " & ActiveCell.Address & " " & Msg
Lõpeta alam

Suhteliselt arusaamatu, eks?

Leave a Comment

10 näpunäidet paremateks Microsoft Teamsi koosolekuteks

10 näpunäidet paremateks Microsoft Teamsi koosolekuteks

Uurige kümmet nõuannet Microsoft Teamsiga parema koosolekukogemuse saamiseks, sealhulgas märkmete tegemine, tausta hägustamine, vaigistamine ja koosolekute salvestamine.

Kuidas Word 2013 dokumentides kommentaare üle vaadata ja kustutada

Kuidas Word 2013 dokumentides kommentaare üle vaadata ja kustutada

Lühikeses Word 2013 dokumendis saate kommentaare hõlpsalt sirvida ja uurida. Siit leiate samm-sammult, kuidas kommentaare lugeda ja eemaldada.

Kuidas parandada Word 2016 tavalist malli

Kuidas parandada Word 2016 tavalist malli

Mõnikord varitseb kurjus selles, mis peaks olema Word 2016 peamises mõistlikkuse hoidlas: tavalises mallifailis. Õpi, kuidas taastada normaalne mall ja eemaldada probleemid.

Kuidas lisada lõigu taane Word 2013-s

Kuidas lisada lõigu taane Word 2013-s

Kuidas lisada lõigu taane Word 2013-s, et luua selgem ja professionaalsem ilme. Meie juhend aitab sul lihtsasti navigeerida Wordi funktsioonide kaudu ja tutvustab esimeses reas taande ning rippuva taande lisamise viise.

Kuidas Outlook 2016-s uusi kiireid samme luua

Kuidas Outlook 2016-s uusi kiireid samme luua

Lisaks kuuele kiirtoimingule, mis kuvatakse Outlooki esmakordsel installimisel, on teil valida veelgi rohkemate Quick Step mallide hulgast.

Kustutage oma PowerPointi slaididelt pliiatsi ja esiletõstja joonised

Kustutage oma PowerPointi slaididelt pliiatsi ja esiletõstja joonised

Kui olete esitluse ajal PowerPointi slaididele joonistamiseks kasutanud pliiatsit või markerit, saate joonised järgmise esitluse jaoks salvestada või need kustutada, nii et järgmisel näitamisel alustate puhaste PowerPointi slaididega. Pliiatsi ja markeri jooniste kustutamiseks järgige neid juhiseid: joonte kustutamine […]

Stiili teegi sisu rakenduses SharePoint 2010

Stiili teegi sisu rakenduses SharePoint 2010

Style'i teek sisaldab CSS-faile, XSL-faile ja eelmääratletud mallilehtede, lehepaigutuste ja juhtelementide poolt kasutatavaid pilte rakenduses SharePoint 2010. CSS-failide leidmiseks avaldamissaidi stiiliteegist: valige saidi toimingud → vaade. Kogu saidi sisu. Ilmub saidi sisu. Style raamatukogu asub […]

Vormindage numbreid tuhandetes ja miljonites Exceli aruannetes

Vormindage numbreid tuhandetes ja miljonites Exceli aruannetes

Ärge uputage oma publikut tohutute numbritega. Microsoft Excelis saate parandada oma armatuurlaudade ja aruannete loetavust, vormindades numbrid tuhandetes või miljonites.

Kuidas SharePointi saite jagada ja jälgida

Kuidas SharePointi saite jagada ja jälgida

Siit saate teada, kuidas kasutada SharePointi suhtlusvõrgustiku tööriistu, mis võimaldavad üksikisikutel ja rühmadel suhelda, koostööd teha, jagada ja ühendada.

Kuidas teisendada kuupäevi Excelis Juliani vormingutesse

Kuidas teisendada kuupäevi Excelis Juliani vormingutesse

Julia kuupäevi kasutatakse tootmiskeskkondades sageli ajatemplina ja partiinumbri kiirviitena. Seda tüüpi kuupäevade kodeerimine võimaldab jaemüüjatel, tarbijatel ja teenindusagentidel tuvastada toote valmistamise aja ja seega toote vanuse. Juliuse kuupäevi kasutatakse ka programmeerimises, sõjaväes ja astronoomias. Erinevad […]